Java基础知识总结

这学期在学校初步接触了Java,感觉对Java挺有兴趣的。于是报名参加了蓝杰实训,在蓝杰的技术老师的辅导下学到了很多有用的东西。现在把在蓝杰学到的Java的一些基础知识和个人感受总结如下(如有不正确的地方欢迎指正):
一、类:一套描述事物共同点的规则,是一个抽象的概念。
二、对象:现实生活当中具体存在的事物或者是脑海中想象的东西,是一个具体的个体。
三、类和对象的关系:对象是类的一个具体描述,比如学生是一个类,而具体的某位同学就是学生这个类的一个对象;电脑是一个类,现在我正用的这台机器是电脑这个类的一个对象等。
四、类的定义:
在java中定义一个类是用关键词class+类名+{},比如class A{};在class前还可以用关键字public修饰,表明这个类是公有的,公有类只能有一个。在{}中可以定义成员变量(属性)和成员方法。具体形式如下:
public class 类名{
//属性
成员变量1(数据类型 变量名);
成员变量2(数据类型 变量名);

成员方法1;(限定修饰符 返回值类型(无返回值用void) 方法名(形参类型 形参名){方法体})
成员方法2;(限定修饰符 返回值类型(无返回值用void) 方法名(形参类型 形参名){方法体})

}
比如定义一个学生类Student如下:
public class Student{
private String name;
private String number;
private int age;
public void setName(String n){
name=n;
}
public void setNumber(String s){
number=s;
}
public void setAge(int t){
age=t;
}

public void study(){
System.out.pringln(name+”正在学习!”);
}
}
五、类的作用:
1. 作为模板,可以创建对象
2. 作为数据类型
六、对象的创建:
类名 变量名 = new 类名();
比如创建Student类的对象如下:
Student st = new Student();
七、对象调用方法
a.方法名(值1,值2);
八、构造方法:构造方法是一种特殊的成员方法,主要体现在以下几个方面:
1. 构造方法必须与类名完全相同,没有返回值。
2. 构造方法的调用是在创建一个对象时使用new进行操作的,其作用是初始化对象。
3. 不能被static、final、synchronized、abstract和native修饰。构造方法不能被子类继承。
4. 构造方法在创建对象时自动执行,一般不能显式地直接调用。
5. 构造方法是可以被重载的。
如果没有为类定义构造方法,系统会自动为该类生成一个默认的构造方法,默认的构造方法的参数列表及方法体均为空,所生成的对象的属性值为零或空,如果定义了构造方法,则将自动屏蔽掉默认的构造方法。构造方法不能被继承。
上面定义的Student类得构造方法的重载如下:
public class Student{
private String name;
private String number;
private int age;
public Student(String n, String s, int t){
name = n;
number = s;
age = t;
}
public Student(String n, String s,){
this(n,s,20);
}
}
九、方法的重载:
方法重载的条件:
1. 两个或两个以上的方法的方法名相同。
2. 形参个数和类型不同。
在Student类中的学习的方法重载如下:
public class Student{
public void study(){
System.out.pringln(name+”正在学习!”);
}
Public void study(String km){
System.out.pringln(name+”正在学习!”+km);
}

继承:
为什么要继承?
1. 体现对象之间的关系
2. 节省编程时间
继承使用关键字extends, 继承到的是父类的属性与方法,例如大学生类继承学生类,大学生类继承了学生类的属性和方法,父类:又叫 基类,超类,子类:又叫做扩展类。
例如大学生类UNSudent继承Student类如下:
public class UNStudent extends Student{


//大学生特有的玩的方法
public void play(){
System.out.println("大学生特有的玩的方法");
}
}
十、方法的重写:在子类中定义方法所用的名字、返回类型及参数表和父类中方法使用一样,但方法体不一样。
方法重载与重写的区别:方法重载是在同一个类中进行的,而方法重写是在父类与子类之间进行的。
例如在UNStudent类中重写Student的学习方法如下:
public class UNStudent extends Student{

//大学生特有的玩的方法
public void play(){
System.out.println("大学生特有的玩的方法");
}
//重写从父类继承来的方法]
/**
* 重写:方法的定义一样,方法体不一样
*/
public void study(){
System.out.println("大学生重写的学习方法");
}
}
十一、重写规则:
1. 重写方法的允许访问范围不能小于原方法。
2. 重写方法所抛出的异常不能比原方法多。
如果子类已经重写了父类的方法,但在子类中还想用父类中被隐藏的方法,可以用关键字super,super关键字也可以用于构造方法,如果在子类的构造方法的定义中调用父类的构造方法,则调用语句必须出现在子类构造方法的第一行。
子类重写父类的方法后要注意以下几点:
1.一个对象只能调用在其定义的类型及其父类中声明了的方法
2.如果子类重写了父类的方法,则子类对象会调用重写之后的方法
3.一个对象值调用父类的方法还是子类的方法,只取决于对象本身的类型
多态:由于继承和重写机制,相同类型的对象调用相同的方法,得到的结果可能不一样


重新创建一个Test类如下:(好好体会Java的多态性)
public class Test {
public static void main(String args[]){

//创建一个学生对象
Student stu = new Student();
stu.setName("李四");
stu.study();


//创建大学生对象
UNStudent unt = new UNStudent();
unt.setName("Lisi");
unt.study();


//自动转型:子类对象的类型可以自动转成父类的类型
Student stu1 = new UNStudent();
stu1.setName("WXH");
stu1.study();

//强制转型:将父类类型的对象强制转成子类的类型
UNStudent un = (UNStudent)stu1;
un.play();

}
运行结果如下:
李四正在学习中
大学生重写的学习方法
大学生重写的学习方法
大学生特有的玩的方法
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值