文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

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

2024-12-03 11:57

关注

一、面向对象

面向对象是在程序中使用对象来映射现实中的事物,对象的关系来描述事物之间的联系。

面向对象的特点:

封装性:封装是将类的某些信息隐藏在类内部,不让外部程序去访问,需要通过这个类提供的方法来实现对隐藏信息的操作和访问。封装也是面向对象的核心思想,把类的属性和行为封装起来,不给外界知道具体的细节。

继承性:继承是类与类的一种关系,而不是对象在继承。子类从父类继承,子类中就拥有父类中定义的所有成员,只是类的继承,我们创建对象,对象与对象是毫无关系的。满足继承是一种”is a”关系,凡是满足”is a”关系的类就可以拥有继承的关系,当A类是1个B类的时候,那么A类就可以从B类继承,例如“猫”继承“动物”,动物类是猫类的父类或基类,猫类是动物类的子类或派生类。

多态性:多态就是对象的多种形态。在程序中可以出现重名现象,它指在一个类中定义的方法和属性被其他类继承,它们就有不同的数据类型或表现出不同的行为,使得同一个属性和方法在不同类有不同的意义。

二、类的定义

1.什么是类?

物以类聚,人以群分。类是对一群具有相同特征或行为的事物的1个统称。是抽象的也不能直接使用。如果非要使用类的话呢?只能去找这一类事物中的一个具体存在,然后使用这个具体存在。

类中可以定义成员变量和成员方法,其中成员变量用来描述对象的特征,也叫做属性。成员方法用来描述对象的行为,称作方法。

如何定义一个类

  1. class Person{ 
  2. int age;//定义int类型变量age 
  3. //定义speak()方法 
  4. void speak(){ 
  5.         System.out.print("我今年"+age+"岁"); 
  6.   } 

首先是定义了一个Person类,Person是类名,age是成员变量,speak()成员方法。在成员方法可以访问成员变量的age。

定义在类中的变量是成员变量,定义在方法中的变量局部变量。假设在某一个方法中定义局部变量跟成员变量的名是一样的,这时方法访问的是局部变量而不是成员变量。

例如:

  1. class Person{ 
  2. int age=3;//成员变量 
  3. //定义speak()方法 
  4. void speak(){ 
  5.         int age=10;//局部变量 
  6.         System.out.print("我今年"+age+"岁"); 
  7.   } 
  8. public class p13 { 
  9. public static void main(String[] args) { 
  10. // TODO Auto-generated method stub 
  11. Person p1=new Person(); 
  12. p1.speak(); 
  13.   } 

输出的结果是:

  1. 我今年10岁 

三、对象的创建和使用

什么是对象

对象是现实生活中的一个个具体存在.。看得见、摸的着。拿过来就可以直接使用。

创建对象的格式

  1. 类名 对象名称=new 类名(); 

例如:

  1. Person p=new Person(); 

上面代码中”new Person()”是创建Person类的一个实例对象,”Person p”是Person类的变量p。“=”表示Person对象在内存中的地址赋值给变量p。这个变量p就有了对象的引用。

创建对象后,可以通过对象的引用来访问对象的所有成员。

访问对象成员的格式

  1. 对象引用.对象成员 

如何访问对象成员的案例

  1. class Person{ 
  2. int age;//成员变量 
  3. //定义speak()方法 
  4. void speak(){ 
  5.         System.out.println("我叫张三,今年"+age+"岁"); 
  6.   } 
  7. public class p13 { 
  8. public static void main(String[] args) { 
  9. // TODO Auto-generated method stub 
  10.         //创建两个Person的对象 
  11. Person p1=new Person();//创建第一个Person对象 
  12. p1.age=8;//age属性赋值 
  13. p1.speak();//调用对象的方法 
  14. Person p2=new Person();//创建第二个Person对象 
  15. p2.speak();//调用对象的方法 
  16.   } 

输出的结果是:

  1. 我叫张三,今年8岁 
  2. 我叫张三,今年0岁 

四、总结

 

本文主要介绍了面向对象概念,面向对象的三个特点封装性、继承性、多态性。类的定义和创建对象与使用。详细的介绍了怎么去定义一个类,通过案例来理解怎么去定义的。对象的创建与使用介绍了使用的格式,通过创建对象后,可以通过对象的引用来访问对象的成员。希望大家通过本文的学习,对你有所帮助!

本文转载自微信公众号「Java进阶学习交流」,可以通过以下二维码关注。转载本文请联系Java进阶学习交流公众号。

 

来源:Java进阶学习交流内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯