目录
1,认识类与对象
对象: 指的是具体的事务 Object,instance(实例)。
类: 对对象的抽象 class
先有具体的对象,然后抽象各个对象之间像的部分,归纳出类通过类再认识其他对象。
对象和类的关系:
- 特殊到一般,具体到抽象。
- 类可以看成一类对象的模板,对象可以看成该类的一个具体实例。
- 类是用于描述同一类形的对象的一个抽象的概念,类中定义了这一类对象所应具有的静态和动态属 性。
- JDK提供了很多类供编程人员使用,编程人员也可定义自己的类。
2,自定义的类与对象
2.1自定义类
定义类(类的组成)
- 属性 field
- 方法 method
- 构造方法 construtor
- 其他:代码块 静态代码块 内部类
属性定义格式:
[修饰符] 属性类型 属性名 = [默认值] ;
public class Person{
String name = "张三";
}
方法定义格式:
[修饰符] 方法返回值类型 方法名(形参列表) { // n条语句 }
public class Person{
//成员变量
String name;
//成员方法
public void study(){
System.out.println("一个程序猿正在努力工作...");
}
}
2.2使用
1.创建对象
类名 对象名 = new 类名();
Person p1=new Person();
2.调用类的属性和方法
对象名.成员变量
对象名.成员方法
p1.name = "李四";
p1.study();
2.3类的实例化
一般类中有三种常见的成员:
属性field、方法method、构造器constructor。这三种成员都可以定义 零个或多个。
编写简单的学生类:
public class Student {
//属性(成员变量)
int id;
String sname;
int age;
//方法
void study(){
System.out.println("我正在学习!");
}
//构造方法
Student(){
}
}
一个典型的IT学生类:
//定义Computer类
class Computer {
String brand; //品牌
}
public class ITStudent {
// field 属性
int id;
String sname;
int age;
Computer comp;
void study(){
System.out.println("我正在学习!使用我们的电脑,"+comp.brand);
}
ITStudent(){
}
public static void main(String[] args){
Student stu = new Student();
stu.sname = "张三";
Computer comp = new Computer();
comp.brand = "联想";
stu.comp = comp;
stu.study();
}
}
3.成员变量与局部变量的区别
- 声明位置不同
- 成员变量 : 类中方法外
- 局部变量 : 方法中(块中)
- 作用范围不同
- 成员变量 : 当前类中
- 局部变量 : 当前方法
- 不同的方法中即使有同名的局部变量,没有关系,互不影响,建议相同
- 内存存放的位置的
- 成员变量 : 堆内存中
- 局部变量 : 栈内存中
- 默认值情况不同
- 成员变量 : 有默认值
- 局部变量 : 没有默认值
类与类之间的关系:依赖、关联、聚合、组合、继承,实现, 它们之间的耦合 度依次增加。