Java基础

文章目录

  • 一.权限修饰符
  • 二.继承
    • 2.1 继承的好处
    • 2.2 继承的细节说明
    • 2.3 方法重写
  • 三.Object类
    • 3.1 equals()
    • 3.2 toString()

一.权限修饰符

Java中的权限修饰符分为四种:public,protected,缺省,private

Java基础_第1张图片

可修饰对象 可用修饰符
外部类 public和缺省
成员变量、成员方法等 public,protected,缺省,private

实际在IDEA开发工具中写代码时,如果修饰符使用不合理导致不能使用,IDEA会做出相应提示。

二.继承

2.1 继承的好处

  • 继承的出现减少了代码冗余,提高了代码的复用性
  • 继承的出现,更有利于功能的扩展
  • 继承的出现让类与类之间产生了is-a的关系,为多态的使用提供了前提。继承描述事物之间的所属关系,这种关系是:is-a 的关系。可见,父类更通用、更一般,子类更具体

注意:不要仅为了获取其他类中某个功能而去继承!

2.2 继承的细节说明

  • 子类会继承父类所有的实例变量和实例方法(其他的不会继承)
  • 子类虽会继承父类私有的成员变量,但子类不能对继承的私有成员变量直接进行访问,可通过继承的get/set方法进行访问
  • 在Java 中,继承的关键字用的是“extends”,即子类不是父类的子集,而是对父类的“扩展”

2.3 方法重写

  • 子类重写的方法必须和父类被重写的方法具有相同的方法名称参数列表
  • 子类重写的方法的返回值类型不能大于父类被重写的方法的返回值类型。注意:如果返回值类型是基本数据类型和void,那么必须是相同的
  • 子类重写的方法使用的访问权限不能小于父类被重写的方法的访问权限。注意:父类私有方法不能重写
  • 子类方法抛出的异常不能大于父类被重写方法的异常

三.Object类

3.1 equals()

  • == 既可以比较基本类型也可以比较引用类型。对于基本类型就是比较值,对于引用类型就是比较内存地址
  • equals()是属于java.lang.Object类里面的方法,如果该方法没有被重写过默认也是==。String等类的equals方法是被重写过的,而且String类在日常开发中用的比较多,久而久之,形成了equals是比较值的错误观点,具体要看自定义类里有没有重写Object的equals方法来判断
  • 通常情况下,重写equals方法,会比较类中的相应属性是否都相等

3.2 toString()

  • 默认情况下,toString()返回的是对象的运行时类型 @ 对象的hashCode值的十六进制形式
  • 在进行String与其它类型数据的连接操作时,自动调用toString()方法
Date now=new Date();
System.out.println(“now=+now);  //相当于
System.out.println(“now=+now.toString());
  • 如果直接System.out.println(对象),默认会自动调用这个对象的toString()
  • 可以根据需要在用户自定义类型中重写toString()方法。如String 类重写了toString()方法,返回字符串的值。
s1="hello";
System.out.println(s1);//相当于System.out.println(s1.toString());

你可能感兴趣的:(Java,java,intellij-idea,java基础,权限修饰)