一、程序
程序是为了模拟现实世界,解决现实问题而使用计算机语言编写的指令集合。
属性:通过变量表示,又称实例变量;
语法:数据类型 属性名;
位置:类的内部,方法的外部;
方法:通过函数表示,又称实例方法;
语法:
public 返回值类型 方法名(形参){
//方法的主体
}
package com.qf.Subject_1; public class Dog { //创建属性 String breed; int age; String sex; String furColor; //创建方法 public void eat() { // System.out.println("狗狗吃东西"); } public void sleep() { System.out.println("狗狗在睡觉"); } }
注意:不再书写 static
package com.qf.Subject_1; public class TestDog { public static void main(String[] args) { //将对象保存在相同类型的myDog变量中,myDog变量称为"对象名"或“引用名” Dog myDog=new Dog();//基于Dog类创建对象 //访问属性:对象名.属性名=值;//赋值 myDog.breed="金毛"; myDog.age=3; myDog.sex="母"; myDog.furColor="黄色"; //访问属性:对象名.属性名;//取值 System.out.println(myDog.breed); System.out.println(myDog.age); System.out.println(myDog.sex); System.out.println(myDog.furColor); //调用方法:对象名.方法名(); myDog.eat(); myDog.sleep(); } }
类与对象的关系:
(1)类:定义了对象应具有的特征和行为,类是对象的模板;
(2)对象:拥有多个特征和行为的实体,对象是类的实例。
局部变量 | 实例变量 | |
定义位置 | 方法或方法内的结构当中 | 类的内部,方法的外部 |
默认值 | 无,必须赋值才能使用 | 字面值(与数组相同) |
使用范围 | 从定义行到包含其结构结束 | 本类有效 |
命名冲突 | 不允许重名 | 可与局部变量重名,但局部变量优先 |
(1)方法的声明:
代表对象能做什么;
组成:修饰符 返回值类型 方法名(形参列表)
(2)方法的实现:
代表对象怎么做,即如何实现对应的功能;
组成:{ }
package com.qf.Subject_1; public class Student{ //属性 String name; int age; String sex; double score; public void sayhi() { //方法 System.out.println("我叫"+name+"年龄"+age+"性别"+sex+"成绩"+score); } }
package com.qf.Subject_1; public class TestStudent { public static void main(String[] args) { Student xiaoming=new Student(); //创建对象 xiaoming.name="小明"; //属性赋值 xiaoming.age=18; xiaoming.sex="男"; xiaoming.score=99; xiaoming.sayhi(); //调用方法 Student xiaomei=new Student(); //可以创建多个对象 xiaomei.name="小美"; xiaomei.age=19; xiaomei.sex="女"; xiaomei.score=100; xiaomei.sayhi(); } }
package com.qf.Subject_1; public class Teacher { String name; int age; double salary; public void sayhi() { System.out.println("我是"+name+"年龄"+age); } public void know(Student s) { System.out.println(name+"要认识学生"); s.sayhi(); } }
package com.qf.Subject_1; public class TestTeacher { public static void main(String[] args) { Teacher wang=new Teacher(); wang.name="王老师"; wang.age=34; wang.salary=4000; Student xiaoming=new Student(); xiaoming.name="小明"; xiaoming.age=18; xiaoming.sex="男"; xiaoming.score=98; wang.sayhi(); wang.know(xiaoming); } }