欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

Java基础(五)

时间:2023-07-06

目录

面向对象

一.继承

1.1 object

1.3 方法的重写override

1.4 instanceof 运算符

1.5 final 关键字

1.6 tostring方法

1.7 ==和equals方法

 二.组合


面向对象

一.继承

关键字“extends”的意思是“扩展”,子类是父类的扩展。

class anmail{ int ages; String name;}class dogs extends anmail{ public void jiao(){ System.out.println("汪汪汪!!!"); } public dogs(int ages,String name){ this.ages=ages; this.name=name; }

1.1 object

object 是Java的根基类,也就意味着所有的Java对象都拥有object类的属性和方法。如果在类的声明中未使用extends关键字指明其父类,其默认继承object类。

class anmail extends Object{ int ages; String name;}

注:子类继承父类,可以得到父类的全部属性和方法(除了父类的构造方法),但不见得可以直接访问(比如,父类的私有属性和方法)。 

1.3 方法的重写override

方法的重写需要符合下面的三个要点:

1.“==”:方法名和形参列表相同。

2.“<=":返回值类型和声明异常类型,子类小于等于父类。

3.“>=”:访问权限,子类大于等于父类。

1.4 instanceof 运算符

instanceof是二元运算符,左边是对象,右边是类;当对象是右边类或子类所创建对象时,返回true,否则,返回false。

public class test { public static void main(String[] args) { dogs d=new dogs(1,"doudou"); dogs p=new dogs(1,"doudou"); System.out.println(d instanceof dogs); System.out.println(d instanceof anmail); }

d时dogs的对象,dogs是anmail的子类。 

1.5 final 关键字

final 关键字的作用:

1.修饰变量:被它修饰的变量不可改变。一旦赋了初值,就不能被重新赋值。

final int MAX=11;

2.修饰方法:该方法不可被子类重写。但是可以被重载。

final void study(){}

3.修饰类:修饰的类不能被继承。

final class A{}

final class anmail { int ages; String name;}class dogs extends anmail{ public void jiao(){ System.out.println("汪汪汪!!!"); } public dogs(int ages,String name){ this.ages=ages; this.name=name; }

1.6 tostring方法

源码:

public String toString(){ return getClass().getName()+"@"+Integer.toHexString(hashCode());}

class dogs { anmail d=new anmail(); public void jiao(){ System.out.println("汪汪汪!!!"); } public dogs(int ages,String name){ this.ages=ages; this.name=name; } public String toString(){ return name+"年龄:"+ages; }}

1.7 ==和equals方法

public class test { public static void main(String[] args) { dogs d=new dogs(1,"doudou"); dogs p=new dogs(1,"doudou"); System.out.println(d==p);//对象不同,返回false System.out.println(d.equals(p));//名字相同 返回true }

 二.组合

组合是继承的另一种表达方式。

class anmail { int ages; String name;}class dogs { anmail d=new anmail();

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。