JavaSE常用类

目录

1.外部类与内部类

1.成员内部类

2.静态内部类

3.局部内部类

4.匿名内部类

2.整数缓冲区

3.String

概述

代码:

描述:

内存图:

常用方法

4.StringBuffer与StringBuild

BigDecimal

SimpleDateFormat

System


1.外部类与内部类

1.成员内部类

一个类里边定义另外一个类,里边的类就叫内部类,外边的就叫外部类

内部类可以访问外部类的成员,即使是私有的。但是要想创建内部类之前就必须先创建外部类。

 public class Outer {
     private int id = 10;
     void show(){
         System.out.println("我是外部类");
     }
     class Inner{
         private String name = "zhangsan";
 ​
         void show(){
             System.out.println(id);
             System.out.println("我是内部类");
         }
     }
 }

测试

 public class Demo01 {
 ​
     public static void main(String[] args) {
         Outer outer = new Outer();
         outer.show();
         Outer.Inner inner = outer.new Inner();
         inner.show();
     }
 }

2.静态内部类

他和外部类是一个等级,外部类可以用静态内部类的东西,而静态内部类调用外部类的东西需要创建外部类的对象

注意:只有内部类才能用static修饰

3.局部内部类

定义在外部类的方法里,只在方法内有效,可以直接访问外部类的属性。

局部内部类访问所属方法的属性值都是加了final修饰的常量

4.匿名内部类

没有类名的局部内部类,一切特征与局部内部类相同

必须继承一个父类或是实现一个接口

2.整数缓冲区

-128--127之间是一个整数的缓冲区,如有Integer数字在这里边就直接在缓冲区取(前提是你没有用new创建,而是直接定义实现自动装修的),若不在之间就会重新new一个对象来创建,所以上述图片代码结果为FTF

3.String

概述

代码:

 

 

描述:

  1. 字符串第一种创建方式,栈中有一个name保存一个地址指向方法区中字符串池中的具体值hello

  2. 先去寻找字符串池有没有zhangsan这个值,没有就创建这个值,并将他的地址值赋给name。所以是改的name的地址,地址指向的地方才是新赋的值

  3. 创建name2后去寻找字符串池有没有这个值,有就直接将地址赋值给name2

  4. 字符串的的第二中创建方式,会产生两个对象(推和字符串常量池中),new就会在堆中有一个对象(第一个对象),堆中对象指向字符串常量池中的java对象(第二个对象),而str则存储堆中对象的地址值

  5. str2也会在堆中创建一个对象,虽然str与str2在堆中的对象都指向字符串常量池中的同一个对象,但是他们只是内容相同,而自己本身存的是地址却不相同,所以字符串比较内容用equals,==是比较地址值

内存图:

 

常用方法

  1. split:按条件拆分字符串,返回拆分后的一个字符串数组

    split("[ ,]+")表示的条件是以空格或逗号进行拆分,+表示可以按多个空格或多个逗号拆

4.StringBuffer与StringBuild

  • StringBuffer:可变长字符串,线程安全,运行效率慢(相对于StringBuild)

  • StringBuild:可变长字符串,线程不安全,运行效率快

一些方法(StringBuffer/StringBuild通用):

 

BigDecimal

 

SimpleDateFormat

 

System

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值