您的位置:首页 > 编程语言 > Java开发

什么是java类与对象

2014-12-03 16:54 218 查看
  java类与对象学习总结:

  类与对象是java中最基本的概念,这就好比是盖一座摩天大楼,我们学会这些基本概念并且理解透彻,才能打下坚实的基础,伴随着努力和创意我们能将java发挥到极致,能将java应用这一座“摩天大楼”盖得与众不同。

  首先我们明确一个概念,什么是类?什么是对象?

  用通俗易懂的话说,类是模糊的,抽象的,不占用内存的。人类是一个类,禽类是一个类,并没有明确指谁,只是因为特征和行为相近,所以归为一类,但它并不占用世界这个“内存”,亦即它并不真实存在。而对象是明确的,具体的,真实存在的。例如天上的月亮,例如我正在写博客的这台电脑,这些所有真实存在占用宇宙内存的东西都是对象。

  通过我上一段的阐述,我们能看得出来,是以什么来划分类?

  在日常生活中,我们以特征和行为来划分类。而类在java中又是以什么来划分的呢?

  对应于特征和行为,是属性和方法。在程序中我们用属性来描述一个对象的特征,用方法来描述一个对象的行为。由此我们可以知道,所有的属性和方法要赋给对象才有意义。

  综上所述,我们有类,就必须要创建对象,要不这个类就没有用,有了对象之后,才有类中的属性,才能类中的调用方法。(抽象类除外)那现在的问题就是,如何在程序中创建对象,如何在这个对象创建之后调用方法?在此我们用一个小程序来进行说明。场景是“李四每看一小时电视剧,学分就减少一分”。

  首先我们要新建两个类,一个是李四属于的Student类,另一个是电视剧属于的TV类。而学分是李四的属性,时长是电视剧的属性。

  //创建一个学生类

  public class Student{

  //定义学生类的属性

  private String name;

  private int score;

  //定义设置和获取姓名的方法

  public void setName(String n){

  name=n;

  }

  public String getName(){

  return name;

  }

  //定义设置和获取学分的方法

  public void setScore(int s){

  score=s;

  }

  public int getScore(){

  return score;

  }

  //定义一个看电视的方法

  public void watch(TV tv){

  setScore(getScore()-1);

  if(tv.getTime()<=0)

  System.out.println(name+"看了"+tv.getName()+"电视剧,减少到"+score+"个学分。");

  }

  }

  //新建一个TV类

  public class TV {

  //定义TV类的属性值

  private String name;

  private int time;

  //定义一个设置和获取电视名字的方法

  public void setName(String n){

  name=n;

  }

  public String getName(){

  return name;

  }

  //定义一个设置和获取电视时长的方法

  public void setTime(int t){

  time=t;

  }

  public int getTime(){

  return time;

  }

  }

  现在有了类,我们要来创建一个李四和电视剧这两个对象,来完成我们想做的事。创建对象又叫做实例化。创建对象有两个方法,一个是构造方法,一个是普通方法。构造方法的格式为:

  public 类名(数据类型 形参名,...){

  }

  //定义方法

  public 返回值类型 方法名(数据类型 形参名,...){

  }

  调用方法的格式为对象名.方法名

  如下文中用new创建对象也属于构造方法,要注意构造方法名必须也类名完全一致,还有不能有返回值类型

  //先新建一个类Manager

  public class Manager{

  public static void main(String [] args){

  //创建TV对象tv,调用TV类中方法

  TV tv=new TV();

  tv.setName("abc");

  tv.setTime(15);

  //创建Student类对象stu,调用Student类中的方法

  Student stu=new Student();

  stu.setName("李四");

  stu.setScore(20);

  System.out.println(stu.getName()+"总共有"+stu.getScore()+"个学分。");

  while(tv.getTime()>0 ){

  tv.setTime(tv.getTime()-1);

  stu.watch(tv);

  }

  }

  }

  由上我们可知创建对象和调用方法的方式。

  方法重载。方法重载是定义在同一个类中,同一个方法实现不同的操作。写的时候,必须要遵守两个条件:1.方法的名字必须要完全一致,包括大小写。2.方法所带的参数个数,参数类型,参数顺序必须要有一个不同.

  生活中例如这样一个场景:我去买东西,今天买了衣服,明天买了水果,后天买了家具。同样是买这个方法,参数不同。而如何调用这个方法,就根据参数来决定。

文章来源:http://www.jinriwujin.com/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: