Java中的内部类:
成员内部类
静态内部类
方法内部类
匿名内部类

内部类的主要作用如下:

1. 内部类提供了更好的封装,可以把内部类隐藏在外部类之内,不允许同一个包中的其他类访问该类

2. 内部类的方法可以直接访问外部类的所有数据,包括私有的数据

3. 内部类所实现的功能使用外部类同样可以实现,只是有时使用内部类更方便

-----------------------------
Jav中的继承是单继承
子类拥有父类的所有属性和方法(private修饰的无效)
实现代码复用

语法规则:
class 子类 extends 父类{

}

方法的重写:
如果子类对继承父类的方法不满意,是可以重写父类继承的方法的,当调用方法时会优先调用子类的方法。
语法规则:
a、返回值类型
b、方法名
c、参数
都要与父类继承的方法一致,才叫方法的重新。

//父类
public class Animal{
  public int age;
  public void eat()
  {
    System.out.println("Animal eat");
  }
}

//子类,可以访问父类的属性age,并且重写了父类的方法eat
public class Dog extends Animal{
  public void eat()
  {
    System.out.println("Dog eat");
  }
}

-----------------------------------------
final关键字
可以修饰类,方法,属性和变量
final修饰类,则该类不允许被继承
final修饰方法,则该方法不允许被覆盖(重写)
final修饰属性,
则属性不会进行隐形的初始化(类的初始化属性必须有值)
或在构造方法中赋值(但只能选其一)

final修饰变量,则该变量的值只能赋值一次,即为常量

------------------------------------------------
super关键字
在对象的内部使用,可以代表父类对象。
1、访问父类的属性
super.age;
2、访问父类的方法
super.eat();

super的应用
子类的构造过程当中必须调用其父类的构造方法。

如果子类的构造方法中没有显示调用父类的构造方法,则系统会默认调用父类无参的构造方法。

如果显示的调用构造方法,必须在子类的构造方法的第一行。
public Dog()
{
  super();
  System.out.println("test");
}

如果子类构造方法中既没有显示调用父类的构造方法,而父类又没有无参的构造方法,则编译出错。

如果自己定义了一个有参的构造方法,系统就不会再提供默认的无参的构造方法。
--------------------------------------------------------------
Object类
是所有类的父类,如果一个类没有使用extends明确标识继承另外一个类,那么这个类默认继承Object类。
Object类中的方法,适用所有子类。
1、toString()方法
在Object类里面toString方法返回的是对象的哈希code码(对象地址字符串)

可以通过重写toString()方法表示出对象的属性。
eclipse工具提供了方法实现子类重写toString,
菜单source -----> Generate toString 选择属性值。

2、equals()方法 (== 操作符)
Object类中的方法,比较的是对象的引用是否指向同一块内存地址。

一般情况下比较两个对象时比较他的值是否一致,所以要进行重写。

eclipse菜单source -----> Generate hashCode() and equals() 选择属性值。

java继承,final,super,Object类,toString,equals,的更多相关文章

  1. Object类----toString,equals,hashcode

    一.toString 的应用方法与覆写 public class testoveridetoString { public static void main(String[] args) { /*ob ...

  2. JAVA之旅(九)——Object类,equals,toString,getClass,内部类访问规则,静态内部类,内部类原则,匿名内部类

    JAVA之旅(九)--Object类,equals,toString,getClass,内部类访问规则,静态内部类,内部类原则,匿名内部类 天天被一些琐事骚扰,学习还得继续 一.Object类 Obj ...

  3. 1.9(java学习笔记)object类及toString()与equals()方法

    object类 java中objec是所有类公共的父类,一个类只要没有明显的继承某一类,那么它就是继承object类. 例如 class Person {......};和class Person e ...

  4. java.lang.Object类与equals()及toString()的使用

    1.Object类是所有Java类的根父类 2.如果在类的声明中未使用extends关键字指明其父类,则默认父类为java.lang.Object类 3.Object类中的功能(属性.方法)就具有通用 ...

  5. Java Object类的equals()方法

    所有类都从Object类中继承了equals方法,Object类中equals方法源代码如下: public boolean equals(Object obj)     {         retu ...

  6. Java Object类及其equals方法

    基本概念: Object类位于java.lang包中,java.lang包包含着Java最基础和核心的类,在编译时会自动导入: Object类是所有Java类的祖先.每个类都使用 Object 作为超 ...

  7. Java提高学习之Object类详解(1)

    转自:http://www.importnew.com/10304.html 问:什么是Object类? 答:Object类存储在java.lang包中,是所有java类(Object类除外)的终极父 ...

  8. 【JAVA基础】10 Object类

    1. Object类概述 是类层次结构的根类 每个类都使用 Object 作为超类 所有类都直接或者间接的继承自该类 所有对象(包括数组)都实现这个类的方法. 2. Object的构造方法 publi ...

  9. 关于Object类的equals方法和hashCode方法

    关于Object类的equals的特点,对于非空引用: 1.自反性:x.equals(x) return true : 2.对称性:x.equals(y)为true,那么y.equals(x)也为tr ...

  10. 代码块和Java的API及Object类

    代码块 局部代码块 特点: 以”{}”划定的代码区域,此时只需要关注作用域的不同即可 方法和类都是以代码块的方式划定边界的 构造代码块 优先于构造方法执行,构造代码块用于执行所有对象均需要的初始化动作 ...

随机推荐

  1. 【Selenium2】【Python多线程】

    # all_tests_pro.py import unittest,time,os,multiprocessingimport HTMLTestRunner #查找多有含有thread的文件,文件夹 ...

  2. 关于PS抠图的各种方法 有这个就可以去面试了!!!加油!!!

    今天和大家说说关于PS抠图的方法 高手也就如此  你值得拥有!!好了 废话不多说 下面进入正题 首先:我们得分析所给的图 然后运用不同的方法,当然也可以相互灵活运用 1:不抠图 2:万能抠图方法:快速 ...

  3. JS绘制拓扑图示例 (JTopo)

    目前在做的项目是渔政的监控,需要用到的设备包括雷达,光电,站点信息等,想要更直观的展现设备之间的连接关系和状态信息,这时候需要画一张拓扑图 在做拓扑图之前,首先要学习一下,html里面另一个比较常用的 ...

  4. 深入浅析Spring的AOP实现原理

    转载来源:https://www.jb51.net/article/81788.htm AOP(Aspect-OrientedProgramming,面向切面编程),可以说是OOP(Object-Or ...

  5. [C#][Windows]]基于ArcFace2.0+红外双目摄像头的活体检测

    废话不多说 直接上图 这个是demo中用到的双目摄像头,一个是红外的,一个是正常的rgb摄像头两个usb接口,在电脑上呈现两路摄像头通道程序检测RGB输出图像,当检测到有人脸时,用RGB人脸的位置到红 ...

  6. PySpark笔记

    spark源码位置:https://github.com/apache/spark Spark Core核心RDD及编程 什么是RDD:1.是一个抽象类不能直接使用,在子类中实现抽象方法是一个抽象类不 ...

  7. Linux 安装SSH

    ●centOS/redhat安装SSH 查询openssh server服务状态:systemctl status sshd 安装sshd命令: yum install openssh-server ...

  8. java web 方面

    1.Tomcat的优化经验. 2.http请求的GET与POST方式的区别. (1)get是从服务器上获取数据,post是向服务器传送数据. (2)get是把参数数据队列加到提交表单的ACTION属性 ...

  9. js插件---bootstrap-datepicker.js是什么

    js插件---bootstrap-datepicker.js是什么 一.总结 一句话总结:选择时间的插件 时间选择插件 1.datepicker如何默认选择当前天? 直接给datepicker对应的i ...

  10. 关于Handler中Message的创建问题

    Message用来定义一个包含任意数据的消息对象,这个消息对象是可以被发送给Handler处理的. 我们最好通过Message.obtain()和Handler.obtatinMessage()来得到 ...