课程总结
java语言特点
1.简洁有效
2.可移植性
3.面对对象
4.解释型
5.适合分布式计算
6.拥有较好的性能
7.健壮、防范于未然
8.具有多线程处理能力
9.具有较高的安全性
10.是一种动态语言
11.是一种中性结构
Java基本数据类型
数据类型 | 大小/位 | 可表示的数据范围 |
---|---|---|
long | 64 | -922372036854775808~9223372036854775807 |
int | 32 | -22147483648~2147483647 |
short | 16 | -32768~32767 |
byte | 8 | -128~127 |
char | 2 | 0~65536 |
float | 32 | -3.4E38~3.4E38 |
double | 64 | -1.7E308~1.7E308 |
类与对象
类的定义
class 类名称{
数据类型 属性;
·····
public 返回值的数据类型 方法名称(参数1,参数2,···)
程序语句;
[return 表达式;]
}
}
对象的创建
类名 对象名称=new 类名();
如果一个对象要被使用,则对象必须被实例化。
构造方法
class 类名称{
访问权限 类名称(类型1 参数1,类型2,参数2,···)
程序语句;
·····
}
}
String类中的常用方法
字符串的内容一旦声明则不可改变
数组的定义
数据类型 数组名[]=new 数据类型[个数]
数据长度的取得
数组名称.length ->返回一个int型数据
代码块
普通代码块是指直接在方法或语句中定义的代码块
public class CodeDemo01{
public static void main(String[] args){
{
int x=30;
System.out,println("普通代码块-->x="+x);
}
int x=100;
System.out.println("代码块之外-->x="+x);
}
};
构造代码块是直接写在类中的代码块
class Demo{
{
System.out.println("构造块1");
}
}
静态代码块是使用static关键字声明的代码块
class Demo{
static{
System.out.println("构造块1");
}
}
静态代码块先主方法执行,优先于构造块执行,静态代码块只执行一次。
继承
类的继承格式
class 父类{}
class 子类 extends 父类{}
通过继承,可以将父类的内容保留在子类中,子类也可以定义自己的属性或方法
class Person{
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
class Student extends Person{
private String school;
public String getSchool() {
return school;
}
public void setSchool(String school) {
this.school = school;
}
}
在Java中,一个子类只能继承一个父类,一个父类还可以有一个父类。
注:子类是不能直接访问父类中的私有成员,但子类可以调用父类中的非私有方法,但是不能直接调用父类中的私有成员。
子类对象在实例化之前会默认调用父类中的构造方法。所以在实例化子类对象之前需要先将父类中的属性进行初始化。
方法的覆写
方法的覆写是指子类定义了与父类中同名的方法,但是在方法覆写时必须考虑到权限,即被子类覆写的方法不能拥有父类方法更加严格的访问权限。
权限大小:private<defaut<public
方法的重载与覆写的区别
序号 | 区别点 | 重载 | 覆写 |
---|---|---|---|
1 | 单词 | Overloadig | Overriding |
2 | 定义 | 方法名称相同,参数的类型或个数不同 | 方法名称、参数类型、返回值类型全部相同 |
3 | 对权限没有要求 | 被覆写的方法不能拥有更严格的权限 | |
4 | 范围 | 发生在一个类中 | 发生在继承类中 |
super关键字
1).使用super可以从子类中调用父类中的构造方法、普通方法、属性
2).super语句必须放在子类构造方法的首行,因此与this不能同时出现
3).在主方法中不能使用this和super方法
final关键字
1).使用final声明的类不能有子类
2).使用final声明的方法不能被子类所覆写
3).使用final声明的变量即为常量,不可修改
4).使用final声明变量时,要求全部的字母大写
接口
接口可以理解为一种特殊的类
1.接口的定义
interface 接口名称{
全局常量;
抽象方法;
}
在接口中如果不写public,则也是public访问权限,接口中的方法永远是public。
2.接口实现
接口的使用要通过子类,子类通过implements关键字实现接口
class 子类 implements 接口A,接口B,····{//一个子类可以同时实现多个接口
}
对象的多态性
对象的多态性主要分两种类型:
(1)向上转型:子类对象->父类对象
(2)向下转型:父类对象->子类对象
对象转型
对象向上转型:父类 父类对象=子类实例 //向上转型,程序会自动完成
对象向下转型:子类 子类对象=(子类)父类实例
如果对象发生了向上转型关系,所调用的方法一定是被子类覆写过的方法,若一种方法只在子类中定义,
而没有在父类中定义,如果要想调用子类定义的其他方法,肯定要使用子类实例。
对象在进行向下转型之前,必须首先发生对象向上转型,否则会出现对象转换异常。
抽象类与接口的关系
异常处理的格式
try{
//有可能出现异常的语句
}catch{
//编写异常的处理语句
}·······
}finally{
一定会运行到的程序代码
}
异常类的继承结构
异常信息的输出方式
System.out.println(异常对象)
e.printStack Trace();
throws关键字
在定义一个方法的时候可以使用throws关键字声明,使用throws声明的方法表示此方法不处理异常,抛给方法的调用者处理。
如:public void tell()throws Exception{}
throw关键字
throw是直接编写在语句之中的,表示人为进行异常的抛出。
throw:用于方法内部主要表示进行手工的异常抛出;
throws:主要在方法声明上使用,并且的告诉用户本方法可能产生的异常,同时该方法可能不处理此异常。
二、文本组件JTextComponent
JTextComponent类的常用方法
单行文本输入组件JTextField
JTextField类的常用方法
JTextField类可以使用JTextComponent类的所有方法
密文输入组件JPasswordField
JPasswordField类的常用方法
这学期很高兴能够学到Java语言,在学习的过程中我逐渐发现使用Java便利性,因为Java是面对对象,所以会有很多方法和类供调用,也会有很多概念要记。
现在我能够使用Java写一些简单的代码,很多概念还没记住,还要多练习。