这学期在学校初步接触了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();
}
运行结果如下:
李四正在学习中
大学生重写的学习方法
大学生重写的学习方法
大学生特有的玩的方法
分享到:
相关推荐
首先,从【标题】:“java知识点汇总” 和【描述】:“内容较杂,有java初中高级知识点,也有Java web架构及原理”来看,涉及的内容包括了Java的序列化与反序列化、IO流的基础知识、多态的概念、泛型的应用、反射...
java知识点总结 一、Java 概述 Java 语言的发展始于 1991 年,由 Sun 公司的 James Gosling 等人开始开发,最初命名为 Oak,旨在用于控制嵌入在有线电视交换盒、PDA 等的微处理器。1994 年更名为 Java。Java 语言...
Java 基础知识总结 Java 是一种广泛使用的编程语言,由 Sun 公司的 James Gosling 等人于 1991 年开始开发。Java 有三种技术架构:JavaEE、JavaSE 和 JavaME。JavaSE 是桌面应用程序的开发基础,JavaEE 是企业环境...
这篇“Java基础知识总结(经典)”涵盖了Java开发中的核心概念和重要知识点,旨在为初学者和有经验的开发者提供一个全面的回顾。以下是主要的学习点: 1. **Java环境配置**:在开始编程之前,必须安装Java ...
Java是一种广泛使用的面向对象的编程语言,其基础知识涵盖了多个方面,包括语法、面向对象特性、异常处理、多线程...以上只是Java基础知识的一个概述,每个话题都值得深入探讨和实践,不断学习和总结是提升技能的关键。
JAVA基础知识总结 JAVA基础知识总结 JAVA基础知识总结