java知识点整合(1)
2019-05-10 本文已影响0人
扇动蝴蝶的翅膀
Java的数据类型
- 基本数据类型:编程语言中内置的最小粒度的数据类型。它包括四大类八大类型:
- 4种整数类型:byte,short,int(默认),long
- 2种浮点数据类型:float,double(默认)
- 1种字符类型:char(默认值空)
- 1种布尔类型:boolean(true,false(默认))
- Java中整数类型包括:byte,short,int,long ,它们之间的区别仅仅是宽度和范围的不同
- 浮点类型主要用来储存小数数值,也可以用来储存范围较大的整数。它分为浮点数(float)和双精度
浮点数(double)两种,双精度浮点数所使用的内存空间比浮点数多,可表示的数值范围与精确度也
比较大
- 引用数据类型:引用也叫做句柄,引用类型,是编程语言中定义的在句柄中存放着实际内容所在地址的地址值的一种数据形式,主要包括:类,接口,数组
java的四个基本特性
- 封装:隐藏对象的属性和实现细节,仅仅对外公开接口
-
封装具有一下优点:
- 便于使用者正确、方便的使用系统,防止使用者错误修改系统属性;
- 有助于建立各个系统之间的松耦合关系;
- 提高软件的可重用性;
- 降低了大型系统的风险,即便整个系统不成功,个别独立的子系统有可能还有价值。 -
Java面向对象的封装性是通过对成员变量和方法进行访问控制实现的的,访问控制分为4个等级:私有、默认、保护和公有。
-
继承:子类和父类之间的继承关系,子类可以获取到父类的属性和方法。
关于子类能否继承父类的私有方法?
从语言角度上说:JDK官方文档明确说明子类不能继承父类的私有方法;
但从内存角度来说,jvm在实例化子类对象之前,会先在内存中创建一个父类对象,然后在父类对象外部放上子类独有的属性,两者合起来形成一个子类对象。所以子类确实拥有父类所有的属性和方法,但是父类中的私有方法子类无法访问。 -
多态:指在父类中成员变量和成员方法被子类继承之后,可以具有不同的状态或表现行为
- 发生多态要有三个前提条件:
- 继承,多态发生一定要子类和父类之间。
- 覆盖,子类覆盖了父类的方法。
- 声明的变量类型是父类类型,但实例则指向子类实例。
- 发生多态要有三个前提条件:
package com.a51work6;
public class HelloWorld {
public static void main(String[] args) {
// f1变量是父类类型,指向父类实例
Figure f1 = new Figure(); ①
f1.onDraw();
//f2变量是父类类型,指向子类实例,发生多态
Figure f2 = new Triangle(); ②
f2.onDraw();
//f3变量是父类类型,指向子类实例,发生多态
Figure f3 = new Ellipse(); ③
f3.onDraw();
//f4变量是子类类型,指向子类实例
Triangle f4 = new Triangle(); ④
f4.onDraw();
}
}
- 抽象:现实生活中的事物被抽象成对象,把具有相同属性和行为的对象被抽象成类,再从具有相同属性和行为的类中抽象出父类。
-
Java语言提供了两种类:一种是具体类,另一种是抽象子类
抽象