Java 基础
面向对象
类和对象
类
类是用来对一个实体(对象)来进行描述的,主要描述该实体(对象)具有哪些属性(外观尺寸等),哪些功能(用来干啥),描述完成后计算机就可以识别了
比如想造很多自行车,类就会像一个设计图:要多少轮子、有没有车铃、车把手在哪里。
定义类的语法
1 | |
类的使用
最简单的代码
1 | |
pubilc class Student:定义一个叫”Student“的模板
class:我要定义一个类
Student:类的名字叫Student
public:公开的,别的地方也能用它
String name;
表示:学生有名字,name是这个名字的变量;String就是存放文字的地方
void study()
学生有个行为,叫study;()这里先留空,表示这个行为现在不需要别人传东西进来
void:这个方法执行完以后,不需要返回一个结果
{….}
大括号里面的内容,就是这个方法在做的事,当调用study时,程序会打印”我在学习“
定义电脑这个类
1 | |
成员变量
成员变量就是写在类里,属于对象的数据
还是Student的例子
1 | |
这里 name 和 age 就是成员变量
作用
用来保存对象的状态
比如两个学生对象:
1 | |
这里:s1 这个对象的名字是张三,年龄是18;s2 这个对象的名字是李四,年龄20
虽然它们都叫Student ,但每个对象保存的数据不同
成员方法
成员方法就是“写在类里、属于对象的功能”
比如
1 | |
这个study()就是成员方法
在Student这个类里,但属于张三(某个实例)的对象
对象
对象怎么创建
创建对象得用new
Stdent s1 = new Student()
Student:对象类型,说明这是一个学生对象
s1:对象名字,方便后面使用
new Student():真正创建一个新的 Student 对象
按照模板student,造出一个实物本体(对象),贴上一个s1的标签,方便后续使用
构造方法
举例:
1 | |
构造方法名字必须和类名完全一样
类叫A,构造方法就写A(),不能写a()、getA()
没有返回值,前面什么都不写
普通方法会写 void xxx(){}
构造方法直接写 A(){},前面不加任何返回类型
作用
A b = new A()
只要创建对象——写了 new A()、就会立刻调用A()构造方法——给新造出来的对象做初始化
默认自带的构造方法
如果写类A的时候,自己完全不写构造方法:
1 | |
Java 会自己给自己加一个我看不见得构造方法
1 | |
这叫默认无参构造,只要我再写任何一个构造方法,这个自带的构造方法就消失
自己写的构造方法(带初始内容)
1 | |
这时执行 A b = new A()时,会自动运行A(),把这个对象的num直接设成100
若有
System.out.println(b.num);
会输出100
带参数的构造方法
1 | |
现在创建对象就要给数字:
A b = new A(50);
常用:
1 | |
使用时:
Student s1 = new Student("张三", 18);