JAVAday20

内部类; 目的就是更好的封装
  1.方法内部类: 必须在 方法中创建 对象,在执行过程中必须 调用该方法
       
       public void run(){
           没有 class A{
            
            }
       
            A a =new A();
       }
  
  2.匿名类:  一般用于创建接口对象;          spring 框架动态代理, 
        new 接口(){
             
             重写的方法
        
        }.run();
  3.成员内部类: 
         内部类可以用到外部类的所有资源,
        外部类必须创建内部类对象 才可以使用
        
        Outer.Inner i = new Outer().new Inner();
       
        Outer o = new Outer();
        Inner i = o.new Inner();
       
  4.静态内部类:
        static 修饰的内部类:
        
   特点: 静态内部类必须加载 外部类的 静态资源,非静态资源是加载不了的
        
类和类之间对的关系: UML 统一建模语言
组合--->聚合---->关联----->依赖----->继承
实现  接口和类的
}
String: 特点   String不可改变类,使用final 修饰的类 ,不可以被继承
  
StringBuffer : 可改变 类, 字符串的 缓冲区

String构造器:
  1.new String();
  2.new String(byte[] b);
  3.new String(char[] c);
  4.new String("123");
****5.new String("123","UTF-8"); 指定字符集编码

String的常用方法:
  1.charAt(int index); 指定下标的字符
  2.endsWith();
    startWith();  
  3.split("#");  
  4.trim(); 去掉两边空格
  5.length(); 返回指定字符串的长度
  6.valueOf(); 将任何数据类型都转换为字符串
        特点: static  , String.valueOf();
  7.replace(String oldChar,String newChar); 新字符替换 老字符 
  8.toLowerCase();
    toUpperCase();
*** 9.toCharArray();将 字符串 变成 char类型的数组  
  10.contains(""); 判断是否包含指定字符 , true ,false
  11.indexOf((int)'A'); 返回执行字符出现的位置
     lastIndexOf();
  12.concat("");拼接     
  13.boolean   isEmpty();判断一个字符串是否为 空
         String str = "";
  14.substring(int fromIndex); fromIndex --- str.length
       substring(int fromIndex,int endIndex); 
         包含头 不包含尾 
       
  15.equals(""); 判断 两个字符串是否相等     true , false  
  16.replaceFirst(""); 将字符串中的第一个字符 替换
 *** 17.getBytes(); 将指定字符串变成byte数组       
           getBytes("");
    
--------------------------------------------------
split方法中 处理特殊字符:  .   *   +
  \\转义字符       [*]
======================================================================
String:
 在jvm内存中存储方式: 
  

  new 关键字帮你做了几件事儿:
    1.构建一个实例对象
    2.在堆内存中 开辟另一个 空间
    3.返回一个对象的 引用 给 变量名

1. == 如果比较数字 就是直接比较 数据的的大小
   == 如果比较引用数据类型 就是比较 引用数据类型的内存地址

2. equals() 是 Object类的方法
      String 类 重写 Object类的 equals 
       所以 它是 安装 自己的 内容 来比较的;
       
    所以 equals()在比较字符串时 ,比较的是 内容
     
    equals比较自定义对象时呢?
      自定义对象 如果没有重写 equals, 那么调用的是 Object类
      的equals,采用的是 == 所以为 false
      
   如果想比较内容,必须在自定义对象中  重写 equals();
   
问题: == 和 equals 区别?
 1.先使用String 类 解释 == 和 equals
 2.在拿 自定义对象 解释 == 和  equals
   
intern(); 
-----------------------------------------
 java.lang.* 不需要导包   
 java.util.* 必须导包

日期类: 
  java.util.Date;  系统时间
      java.sql.Date; 数据库时间 
 
util包下Date的起始时间: 1970, 00:00:00

jdk1.8 有一个Instant类 可以直接调用 now();系统时间

常用构造器:
  new Date();
  new Date(long date); //毫秒值
  
常用方法: 
  getTime(); 获取当前系统时间的 毫秒值显示形式  

日期的格式化: 
 SimpleDateFormat: 格式化 
   1.parse(String str); Date  将字符串类型转换为日期类型
   2.format(Date date); Strinng 将日期类型转换为字符串类型
   
   
 

  

 
      
      
       
    
    
    
    
      
       
       
        
 

   
   


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值