java基础入门——类

来源:互联网 发布:linux 文件夹重命名 编辑:程序博客网 时间:2024/06/14 13:37

                                                                                                       关于java中的类                                                                                                

              前言:Java是一门完全面向对象的编程语言,类和对象是面向对象编程的基础和核心。面向对象的编程思想就是使用人的思维方式来模拟(代码)现实生活。

                 正文:关于java中的类,与其他语言的类并没有太大的差异,但是java语言的类是与生活密切相关的;java中的对象就可以拿我们现实中的东西来与之对应.

1.现实生活中有哪些是对象?

对象:在现实生活中只要是一个具体的物体或者一个具体的事物就是一个对象。
你所看到的任何一个物体,你所想的任何一个物体都是一个对象。


举例:某一个鼠标、某一台手机、某一个人、...


你会从哪些方面去描述对象,分别有些什么内容?
某一台手机
特征:形状、颜色、价格、电量、品牌、系统、运行内存、CPU、GPU、...
功能:播放音乐、播放视频、运行游戏、打电话、发短信、...


某一个人
特征:身高、外貌、年龄、职业、性别、体重、籍贯、学校、爱好、性格、姓名、...
行为:吃饭、睡觉、写字、读书、打游戏、唱歌、游泳、...   

 2.类的组成

现实生活中是怎样对对象进行分类的呢?
根据对象相似的特征和相似的行为进行分类;生活中的类是抽象的。


程序中的类是怎样的呢?
程序中的类是对现实生活中对象的特征和行为(功能),按照程序中类固定格式进行的抽象定义。
程序中的类是由两个部分组成:1.属性   2.方法
属性是根据对象的特征进行定义的:
方法是根据对象的功能(行为)进行定义的。


3.类的基本格式
public class 类名 {


//定义属性
public 数据类型  属性名;


//定义方法
public 返回值数据类型  方法名(数据类型 参数名,...){
//方法体
}


}
注意:Java中类是最基本的单位,也是模板,如果你要使用类中的属性和方法,不能使用类名去调用。




4.实例化对象和调用属性方法的格式
实例化对象的关键字:new
格式:
类名 对象名 = new 类名();


调用对象的属性和方法的格式
对象名.属性名
对象名.方法名(参数值,...);

5.场景:张三在学习Java课程中,学完该课程后,张三的学分要增加3分。
1.找出场景中的对象以及对象的特征和行为:
张三
特征:学分、姓名
行为:学习(Java课程)


Java课程
特征:学分、名字、课时

2.根据对象的特征和行为,按照程序中类的固定格式进行对象的抽象定义:
上述的有二个对象,那么需要定义2个类
把张三抽象定义为Student学生类
把java课程抽象定义为Subject课程类


3.定义主函数的类,在主函数中实例化对象调用属性和方法。
4.代码如下:

                            a.//定义Subject课程类
                                               public class Subject {


                                                                                  //定义属性
                                                                                 public int score;//学分属性


                                                                                 public String name;//姓名属性

                                                                                public int time;//课时属性


                                                                                                                                              }

                          b.public class Student {


                                                                  public String name;//姓名属性


                                                                  public int score;//学分属性


                                                                  //定义学生学习课程的方法
                                                                 public void study(Subject  sub){
                                                          sub.time--;//课程的课时减少
                                                         System.out.println(name+"正在学习"+sub.name+"课程,"+sub.name+"剩余的课时是"+sub.time);
                                                         if(sub.time<=0){//判断课程是否学完
                                                  score += sub.score;
                                                 System.out.println(name+"已经学完了"+sub.name+"课程,"+name+"现在的学分是"+score);
                                                                                                                                            }
                                                                                                                               }


                                                                                                                              }

                       c.//定义Manager类
                                                       public class Manager {


                                                        //定义程序的入口主函数
                                                         public static void main(String [] args){


                                                 //实例化Subject课程类的对象
                                                 Subject sub = new Subject();
                                                 //设置对象的属性值
                                                 sub.name = "java";
                                                  sub.time = 10;
                                                  sub.score = 3;


                                                 //实例化Student学生类的对象
                                                Student stu = new Student();
                                                //设置对象的属性值
                                                 stu.name = "张三";
                                                  stu.score = 0;


                                                  while(sub.time>0){
                                          //让学生学习课程
                                          stu.study(sub);
                                                                                               }


                                                                                         }


                                                                                  }

6.练习
1.回合制对战游戏场景:奥特曼和小怪兽进行PK,直到一方的血量为0时结束战斗,输出谁胜利了。
1.找出场景中的对象以及对象的特征和行为:


2.根据对象的特征和行为,按照程序中类的固定格式进行对象的抽象定义:

这个留给大家做作业,做出来的可以在下方留言哦!!