面向对象特征:
继承、封装、多态
对象是存在的具体实体,具有明确定义的特征和行为
万物皆对象,对象因我关注而产生
一种认识事物的方式,注重对事物整体的认知,最符合人类自然的思维习惯。
属性是指对象身上的特性,行为是指对象产生的一系列动作。
类是具有相同属性和行为的一组对象的集合;
在软件系统中,我们用类来模拟现实生活中的实体
类是对象的抽象,对象是类的实例
在结构化编程中,程序围绕着要解决的任务来设计
面向对象编程中,程序围绕着问题域中的对象来设计
优点:性能比面向对象高,因为类调用时需要实例化,开销大,比较消耗资源
缺点:没有面向对象易维护、易复用、易扩展
优点:易维护、易复用、易扩展
缺点:性能比面向过程低
整数类型 |
byte 一个字节 |
Short 两个字节 |
Int 四个字节 |
Long 八个字节 |
浮点型 |
Float 四个字节 |
Double八个字节 |
|
|
字符型 |
Char 两个字节 |
|
|
|
布尔型 |
boolean |
由系统确定 |
|
|
类、数组、接口
基本数据类型存放的是具体的数据
引用数据类型存放的是对象的地址
回收的是内存中没有被变量引用的,同时没有被使用的对象
null表示在引用类型变量中没有存放任何对象的引用。对null值调用属性和方法,会抛出空指针异常。(Java.Lang.NullPointerExcption)
堆 new(对象)
栈 局部变量
数据段 类变量、常量
代码段 方法的定义
局部变量:方法和语句块内部定义的变量(栈空间,当方法或语句块一结束,局部变量空间就马上释放)
成员变量(属性):方法外部、类的内部定义的变量(堆空间,随对象产生而产生,随对象销毁而销毁)
类变量(静态变量):加上关键字“static”
在一个包中,如果要使用另一个包中的类,那么需要通过import导入该类。本包中的类,和java.lang包中的类无需导入可以直接使用
在方法之间传递和返回对象,传递和返回的是对象的引用。
构造方法(构造器):构造方法的方法名和类名相同,没有返回类型(包括void)。构造方法主要用于产生对象。
如果一个类没有定义构造方法,虚拟机会默认分配一个共有的无参构造方法。如果该类中定义了构造方法,默认的无参构造方法就会消失。
在方法中访问变量,会优先访问局部变量。如果局部变量不存在,那么,在访问成员变量或静态变量。 this表示当前变量,this.访问的是当前变量的属性或方法。
静态变量在类加载时完成初始化
如果一个类声明为public,那么该类的类名和文件名必须一致。一个类里不能有两个为public的类名
原文:https://www.cnblogs.com/hjping/p/11838949.html