数据类型 (1)
基本数据类型 (1)
引用类型 (3)
控制语句 (3)
顺序结构 (3)
选择结构 (3)
循环结构 (4)
面向对象 (5)
面向过程和面向对象的区别 (5)
类和对象 (5)
成员变量 (5)
方法 (5)
方法的重载(overload) .......................................................................错误!未定义书签。
构造方法 (7)
内存分析 (7)
package (9)
import (10)
this (10)
static (11)
super (11)
面向对象的三大特征 (11)
封装 (11)
继承 (12)
方法的重写(override) (12)
多态 (12)
抽象类 (14)
接口 (14)
面向接口编程............................................................................................错误!未定义书签。
本站已经对文档保护进行限制了,取消文档保护密码为:
步骤:进入word 工具---》取消文档保护
数据类型
基本数据类型
a)数值型
i.整型
1.byte 1个字节(256) -128-127
2.short 2个字节(65536) 正负3万
3.int 4个字节正负21亿
4.long 8个字节
ii.浮点型
1.float 4个字节
2.double 8个字节
注:
类型的自动转换
b)字符型2个字节65536 unicode字符集
c)布尔型
引用类型控制语句顺序结构
选择结构
1.单选择结构
2.双选择结构
循环结构
while
do while
面向对象
面向过程和面向对象的区别
面向对象帮助我们从宏观上把握项目的整体关系,微观上实现仍然是面向过程。
类和对象
抽象(抽出事务象的部分)和具体。
类是对象的模板。
成员变量(field,属性)
要点:
1.成员变量的自动初始化。
整数:0,浮点数:0.0, Boolean:false. 引用类型:null char:\u0000
方法
方法的重载(overload)
构造方法(构造器constructor)
构造方法是特殊的方法!!!特殊在什么地方:
1.方法名必须和类名保持一致!
2.无返回值(事实上,他是有返回值的。
)
3.需要通过new来调用!
4.如果我们没有定义构造器,则编译器会帮助我们自动添加;如果我们手动定义构造器,
则编译器不会帮助我们添加无参构造器。
内存分析
堆:存放new出的对象。
栈:存放局部变量(方法内部定义的变量)
方法区:存放类的信息、static变量、字符串常量等。
System.out.println(33==44);
System.out.println(p==p2);
String str = "张三";
String str2 = "张三";
String str3 = new String("李四");
String str4 = new String("李四");
System.out.println(str == str2);
System.out.println(str3 == str4);
System.out.println("哈哈");
}
}
package
包的两个基本作用:
1.解决类的重名问题
2.管理类
包的具体用法:
1.使用package,必须位于文件的第一句非注释性语句!
2.包名的规范:域名倒着写+有意义的名字
常见的包:
ng 核心包(不需要我们import,直接可以使用!)
java.io 输入输出流
java.util 工具包
网络
java.awt
java.sql
import
用来引入其他包中的类,方便我们使用。
import test.Person;
import test.*;
静态导入:import static ,导入某个类的静态属性和方法!this
用来指定当前的对象!
如果this位于构造方法内,则表示正要初始化的对象。
如果this位于普通方法内,则表示调用该方法的对象(即当前对象)
static
static变量位于方法区,被所有的该类的对象共享,可以称为类属性(静态属性)、类方法(静态方法)。
Static变量可以使用:类名.变量名来引用。
static变量(方法)是从属于类的。
可以通过:类.名字来调用
普通变量(方法)是从属于对象的。
可以通过:对象名.名字来调用。
static方法中,不能调用普通方法或普通属性。
final
final 修饰普通变量:常量!!
super
面向对象的三大特征
封装/隐藏
可以将类的内部实现细节进行封装(隐藏了内部实现的细节、复杂性),方便外部调用。
这样的话,就利于软件的维护和扩展。
封装的使用方式:
1.所有的属性都使用private。
但是一般会提供get/set方法便于访问和设置属性。
2.除非确认你的方法要被外部调用,否则一般都可以使用private。
继承
子类扩展了父类。
使用extends关键字。
JAVA类的继承中,只有单继承,没有多继承。
为什么需要继承?
1.抽象概念,便于建模
2.代码复用
Object类
Object是所有类的根类!
掌握:toString()方法的使用!用来打印对象的字符串表示形式!
学习使用API文档
学习怎么查询API文档
学习使用DOC注释,生成项目的API文档(右键单击项目→export→java, javadoc→next,finish,yes)
方法的重写(override)
多态
多态的三个必要条件:继承、重写、父类引用指向子类对象。
抽象类
抽象类:包含抽象方法的类。
抽象方法必须被子类重写。
注意:
1.抽象类可以包含构造方法,但是不能被实例化。
2.抽象类包含了:具体实现和规范!!
接口
为什么需要接口?
项目需求是多变的!我们要从这些多变的需求中抽象出不变的内容,以不变应万变,提高我们的开发效率。
接口是做什么的?
用来描述规范!体现了现实中这样的逻辑“如果你是…则必须能….”。
接口:
只包含了抽象方法,常量!!
一个类可以实现多个接口
面向接口编程!!!。