JAVA第七章复习小结

本文介绍了面向对象编程的基本概念,包括Java中的封装、继承和多态性。封装是核心思想,通过隐藏对象细节实现数据保护。继承允许在已有类基础上创建新类,多态则提供了重命名和不同行为的能力。文章还讨论了类的构造方法、静态方法、内部类以及类的继承机制,包括子类重写父类方法、super关键字的使用。此外,还提到了final关键字、抽象类和接口,以及多态在Java中的应用,包括向上转型和匿名内部类。
摘要由CSDN通过智能技术生成

一.面对对象
面向对象是一种符合人类思维习惯编程思想,面向对象的特点主要可以概括为封装性、继承性和多态性
封装性:封装是面向对象的核心思想,将对象的属性和封装起来,不需要让外界知道具体实现细节
继承性:继承主要描述的是类与类之间的关系,通过继承,可以无需重新编写原有类的情况下,对原有类进行扩展
多态性:多态是指在程序中允许出现重名现象,它指在一个类中定义的属性和方法被它继承后,它们可以具有不同的数据类型或表现出不同的行为,这使得同一个属性和方法在不同的类中具有不同的语义

2.对象的创建与使用
在Java中,对象是通过类创建出来

在Java程序里,可以使用new关键字来创建对象

类名  对象名称=new  类名();

3.类与对象


4.类的封装
在设计一个类时,应该对成员变量做出一些限定,不允许外界随意访问,这就需要实现类的封装

 

5.构造方法的定义

在一个类的定义方法如果同时满足这三个条件,该方法成为构造方法,具体方法如下

      a、 方法名与类名相同

      b、在方法名的前面没有返回值类型的声明

      c、在方法中不能使用return语句返回一个值,但是可以单独写一个return语句来作为方法的结束

6.构造方法的重载:
a,一个类可以定义多个构造方法,每个构造方法的参数类型或参数个数不同即可

b,在创建对象时,可以通过调用不同的构造方法来为不同的属性进行赋值

7.this关键字
Java中提供了一个关键字this来指当前对象,用于在方法中访问对象的其他成员

8.static关键字


9.静态方法

      a,只要在类中定义的方法前加上static关键字       

      b,同静态变量一样,静态方法可以使用“类名.方法名”的方式来访问,也可以通过类的实例对象来访问。

注意:在一个静态方法中只能访问用static修饰的成员,原因在于没有被static修饰的成员需要先创建对象才能访问,而静态方法在被调用时可以不创建任何对象


10.静态代码块


 11.成员内部类

 


  创建内部类的具体语法:

外部类名.内部类名 变量名 = new 外部类名().new 内部类名();

二、类的继承
继承的概念

在程序中,继承描述的是事物之间的所属关系,通过继承可以使多种事物之间形成一种关系体系。

1,在Java中,类的继承是指在一个现有类的基础上去构建一个新的类,构建出来的新类被称作子类,现有类被称作父类。

2,子类会自动拥有父类所用可继承的属性和方法

3,在程序中,如果想声明一个类继承另一个类,需要使用extends关键字

注意:


 重写父类方法
1.在继承关系中,子类会自动调用父类中定义的方法,但有时在子类中需要对继承的方法进行一些修改,即对父类的方法进行重写。

2,需注意的是,在子类中重写的方法需要和父类重写的方法具有相同的方法名,参数列表以及返回值类型

super关键字
a,当子类重写父类的方法后,子类对象将无法访问父类被重写的方法

b,使用super关键字访问父类的成员变量和成员方法

super.成员变量
super.成员方法{[参数1,参数2...]}

c,使用super关键字访问父类的构造方法

super([参数1,参数2...]) 

 final关键字修饰类
Java中的类被final关键字修饰后,该类将不可以被继承,也就是不能够派生子类

特征:

        1,final修饰符的类不能被子类重写

        2,final修饰的方法不能被子类重写

        3,final修饰的变量(成员变量和局部变量)是常量,只能赋值一次
 

抽象类
1,当定义一个类时,常常需要定义一些方法来描述该类的行为特征,但有时这些方法的实现方式是无法确定的。

2,Java允许在定义方法时不写方法体,不包含方法体的方法为抽象方法,抽象方法必须使用abstract关键字来修饰

abstract  void  shout();//定义抽象方法shout

接口
a,如果一个抽象类中的所有方法都是抽象的,则可以将这个类用另一种方式来定义,即接口 。

b,接口是由常量和抽象方法组成的特殊类,是对抽象类的进一步抽象。

c,在定义接口时,需要使用interface关键字来声明。其语法如下:

[public] interface 接口名 [extends 接口1,接口2...]{
    [public] [static] [final] 数据类型 常量名 = 常量名;
    [public] [abstrcat] 返回值 抽象方法名(参数列表);
}

 d、接口的实现类声明格式如下:

[<修饰符>] class <类名> [extends <超类名>]  [implements <接口1>,<接口2>...]

 三.多态
1,多态概念

在同一种方法中,这种由于参数类型不同而导致执行效果各异的现象就是多态,继承是多态得以实现的基础;在Java中为了实现多态,允许使用一个父类类型的变量来引用一个子类类型的对象,被引用子类对象特征的不同,得到不同的运行结果。

2,多态的类型转换

在多态的学习中,涉及到将子类对象当作父类类型使用的情况,称:向上转型

将子类对象当作父类使用时不需要任何显示的声明,需要注意的是,此时不能通过父类变量去调用子类中的特有方法


 3.object类

 

 

 四.匿名内部类

Java内部类可以分为:成员内部类,方法内部类和匿名内部类等

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值