Java基础入门篇——面向对象和类的定义

发表于:2021-2-02 09:38

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:Java进阶者    来源:Java进阶学习交流

  一、面向对象
  1.面向对象是在程序中使用对象来映射现实中的事物,对象的关系来描述事物之间的联系。
  2.面向对象的特点:
  封装性:封装是将类的某些信息隐藏在类内部,不让外部程序去访问,需要通过这个类提供的方法来实现对隐藏信息的操作和访问。封装也是面向对象的核心思想,把类的属性和行为封装起来,不给外界知道具体的细节。
  继承性:继承是类与类的一种关系,而不是对象在继承。子类从父类继承,子类中就拥有父类中定义的所有成员,只是类的继承,我们创建对象,对象与对象是毫无关系的。满足继承是一种”is a”关系,凡是满足”is a”关系的类就可以拥有继承的关系,当A类是1个B类的时候,那么A类就可以从B类继承,例如“猫”继承“动物”,动物类是猫类的父类或基类,猫类是动物类的子类或派生类。
  多态性:多态就是对象的多种形态。在程序中可以出现重名现象,它指在一个类中定义的方法和属性被其他类继承,它们就有不同的数据类型或表现出不同的行为,使得同一个属性和方法在不同类有不同的意义。
  二、类的定义
  1.什么是类?
  物以类聚,人以群分。类是对一群具有相同特征或行为的事物的1个统称。是抽象的也不能直接使用。如果非要使用类的话呢?只能去找这一类事物中的一个具体存在,然后使用这个具体存在。
  2.类中可以定义成员变量和成员方法,其中成员变量用来描述对象的特征,也叫做属性。成员方法用来描述对象的行为,称作方法。
  3.如何定义一个类
  class Person{ 
  int age;//定义int类型变量age 
  //定义speak()方法 
  void speak(){ 
          System.out.print("我今年"+age+"岁"); 
    } 
  } 
  首先是定义了一个Person类,Person是类名,age是成员变量,speak()成员方法。在成员方法可以访问成员变量的age。
  4.定义在类中的变量是成员变量,定义在方法中的变量局部变量。假设在某一个方法中定义局部变量跟成员变量的名是一样的,这时方法访问的是局部变量而不是成员变量。
  例如:
  class Person{ 
  int age=3;//成员变量 
  //定义speak()方法 
  void speak(){ 
          int age=10;//局部变量 
          System.out.print("我今年"+age+"岁"); 
    } 
  } 
  public class p13 { 
  public static void main(String[] args) { 
  // TODO Auto-generated method stub 
  Person p1=new Person(); 
  p1.speak(); 
    } 
  } 
  输出的结果是:
  我今年10岁 
  三、对象的创建和使用
  1.什么是对象
  对象是现实生活中的一个个具体存在.。看得见、摸的着。拿过来就可以直接使用。
  2.创建对象的格式
  类名 对象名称=new 类名(); 
  例如:
  Person p=new Person(); 
  上面代码中”new Person()”是创建Person类的一个实例对象,”Person p”是Person类的变量p。“=”表示Person对象在内存中的地址赋值给变量p。这个变量p就有了对象的引用。
  3.创建对象后,可以通过对象的引用来访问对象的所有成员。
  访问对象成员的格式
  对象引用.对象成员 
  4.如何访问对象成员的案例
  class Person{ 
  int age;//成员变量 
  //定义speak()方法 
  void speak(){ 
          System.out.println("我叫张三,今年"+age+"岁"); 
    } 
  } 
  public class p13 { 
  public static void main(String[] args) { 
  // TODO Auto-generated method stub 
          //创建两个Person的对象 
  Person p1=new Person();//创建第一个Person对象 
  p1.age=8;//age属性赋值 
  p1.speak();//调用对象的方法 
  Person p2=new Person();//创建第二个Person对象 
  p2.speak();//调用对象的方法 
    } 
  } 
  输出的结果是:
  我叫张三,今年8岁 
  我叫张三,今年0岁 
  四、总结
  本文主要介绍了面向对象概念,面向对象的三个特点封装性、继承性、多态性。类的定义和创建对象与使用。详细的介绍了怎么去定义一个类,通过案例来理解怎么去定义的。对象的创建与使用介绍了使用的格式,通过创建对象后,可以通过对象的引用来访问对象的成员。希望大家通过本文的学习,对你有所帮助!

  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号