5.Java

  1. ++
  • 混合使用
    ++a前边 先加后用, a++后边 先用后加
  • 分开使用
    a++++a 没有区别。
  1. Jshell
  2. 常量计算
    如果右侧都是常量,那么编译直接计算出来的结果。
  3. Switch
  • 可以switch的类型受到限制
  • byte/short/char/int
  • String /enmu
  1. static 静态
  • 静态方法不能访问非静态的变量,能不能访问函数呢?
  • 成员方法可以访问静态变量。
  • 因为静态方法是归宿与类,而成员变量归属于实例
  • 方法区有用来存储静态方法的地方。
  1. 堆,栈内存,方法
  • 栈内存,通过压栈
  • 堆内存,所有new出来的对象都在这里
  • 方法区,各种方法
  1. 地址
  2. 继承
  • 继承 对静态的原则。
  • override时子类的返回值必须小于父类的返回值范围。
  • 子类权限必须大于父类权限, public >protected >(default)>private;
  1. 抽象类
  • 抽象方法必须在抽象类中,在class之前,和返回类型之前
  • 子类必须实现所有的抽象方法。
  1. 接口
  • 接口是多个类的数据规范
    10.1 内容

  • 7 常量,抽象方法

  • 8 ,默认方法,静态方法

  • 9

  • Java9
    public

image.png
  • 接口常量
    public static final int num=0;
    前三个关键字省略也是存在的;
  • 多态
    成员变量不能覆盖重写,多态既能掉父类的也能掉子类的。不是多态不也可以吗?
//.的方法获取成员变量
Fu fu =new zi();
fu.成员变量,直接从fu类找,没有就再从父类找


// 成员函数获取成员变量
Fu fu =new zi();
看该方法属于谁,从哪个类中找,没有向上找。
  1. 内部类
    wai.nei dd=new wai().new nei();
  • 内部类如何引用外部重名变量


    image.png
  1. 类的权限
    外部类 public default
    内部类,跟函数一样的权限
    函数内部类:default
  2. 匿名内部类
  • 实际上是利用了多态的方法。
    接口 name = new 接扣(){
    重写所有方法
    };
  1. 枚举类
enum Weekday {
    MON(1), TUE(2), WED(3), THU(4), FRI(5), SAT(6), SUN(0);

    public final int dayValue;

    Weekday(int dayValue) {// 这里不能用public
        this.dayValue = dayValue;
    }
}
//

 Weekday day=Weekday.SUN;
day.ordinal();//输出顺序值。

//
toString()会返回和name()返回值值,toString()可以重写。
  1. 字符串
String.join;
StringJoiner;
StringBuilder;
  1. 抛出异常
// 只捕获一次
public static void main throws Exception(){}
//在程序里跑出异常
throw new Exception("null");




最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容