二.类和对象

1.生活中有哪些是对象?
哲学:万事万物皆对象。
眼睛里看到的任何一个物体都是一个对象。
对象是一个具体的物体。(一种是现实生活中存在的对象,另一种是虚拟虚构的对象)
对象的组成部分:特征,行为
如:
某一个学生:
特征:姓名,学校,身高,体重,性别,年龄,学院......
行为:学习,看书,打球......
某一个显示器:
特征:颜色,形状,尺寸,材质,品牌......
行为:显示,开,关,菜单调节......

2.类的组成
类是由相似特征和相似行为对象的抽象(集合)。
类的组成是由属性和方法组成,属性表示的是特征,方法表示的是行为。

面向对象编程(OOP):面向对象编程将所有的都考虑为一个对象,以这种对程序进行设计。
如:
上机实验:学生类,电脑类,老师类,实验题目类,......
在面向对象编程中,对象是基础和核心。
类在面向对象编程中,只是一个基本的单位。
类是一个模板,但是可以通过模板类,实例化很多的对象。

3.类的结构
public class 类名{
//属性定义
private 数据类型 属性名;
//方法定义
public 返回值数据类型 方法名(参数数据类型 参数名,...){
//方法体
}
}

4.实例化对象和调用方法的格式
实例化对象的格式:
类名 对象名 = new 类名();
tudent stu = new Student();

调用方法的格式:
对象名.方法名(参数值,...);
stu.setName("张三");
stu.study();

5.方法的分类
java中方法分为两大类:
1.根据参数划分:
有参数的和无参数的方法
2.根据返回值划分:
有返回值的方法和无返回值的方法。

数据类型:基本数据类型,类类型(引用类型【只要使用了class关键字定义的类,就是一种数据类型】,对象类型)。
引用类型也可以作为参数。

例:
Manage.java

//学生管理类,也是主函数类
public class Manager{
//主函数
public static void main(String [] args){
//实例化一个Student类型的对象
Student stu = new Student();
//调用方法
stu.setName("张三");
stu.study();

//实例化一个Teacher类的对象
Teacher tea = new Teacher();
//调用教学的方法,并传递一个对象过去。
tea.teach(stu);

//实例化一个Student类型的对象
Student stu2 = new Student();
//调用方法
stu2.setName("李四");
stu2.study();
}

}

Student.java

//定义一个学生类
public class Student{

private String name;//姓名属性
private int score;//学分属性

//定义一个给姓名属性设置值的方法
public void setName(String strName){
//将strName赋给属性name
name = strName;
}

//学习方法
public void study(){
//学分加1
score++;
//输出学生的信息
System.out.println(name+"学习中,学分是:"+score);
}
}

Teacher.java

//定义一个Teacher类
public class Teacher{

//定义一个教学方法
public void teach(Student stu){

System.out.println("老师开始授课了!");
stu.study();

}
}

练习:
定义一个People类,有属性和方法,定义一个Move类,有属性和方法,定义一个影院类,在People在影院中看Move.

Cinema.java
//实例化对象
public class Cinema{

public static void main (String [] args){
//类名 对象名=new 类名();
People peo = new People();
peo.setName("某某");


Movie mov = new Movie();
调用方法的格式:对象名.方法名(参数值)
mov.setMoviename("十面埋伏");
mov.setDirector("某某");
peo.seeMovie(mov);
}
}

Movie.java
public class Movie{
private String name;

public void setMoviename(String strMoviename){
name=strMoviename;
System.out.println("电影的名字是:"+"<<"+name+">>");
}
//获取电影名字的方法
public String getName(){
return name;
}
private String director;
public void setDirector(String strDirector){
director=strDirector;
System.out.println("电影的导演是:"+director);
}
}

People.java

//定义一个People类
public class People{

//属性定义:private 数据类型 属性名
private String name;

//方法定义:public 返回值数据类型 方法名(参数数据类型 参数名)
public void setName(String strName){
//方法体
name=strName;
}


public void seeMovie(Movie m){
System.out.println(name+"看了一部"+m.getName()+"电影");
}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值