面向对象

本文介绍了面向对象编程的基本概念,对比了面向过程与面向对象的区别,并通过具体的类与对象实例展示了如何定义类,包括成员变量和方法,以及如何创建对象并调用其方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 一个很抽象的概念,它相对面向过程而言。
  • 过程与对象都是一种解决问题的思想。  

    • 面向过程:强调的是功能行为,一种过程,先干啥,再干啥; 

    • 面向对象:将功能封装到对象里,强调的是具备某功能的对象;

  • 计算机语言为了更好的去描述现实生活中的事物,也一样会按照生活中的思考方式来定义,这样人们使用起来才会更方便。

 

 

面向对象特征:

  • 封装
  • 继承
  • 多态

 

是对生活中某一类事物的描述(一种抽象概念),对象是该类事物实实在在存在的个体。(对象==实例)

  • 类是对具有相似性质的一类事物的抽象描述(包括状态和行为);
  • 类是对象的模板,对象是类的实例,例子:描述昨天看见的一个靓妹;
  • 抽取对象中共性内容,--->对具体进行抽象;---->该类事物具备的特性;
  • 描述事物--->描述事物的的字段和行为;
    •  状态对应类中的成员变量(字段);
    • 决定对象的具体表现形式 行为对应类中的方法;决定了对象的具体的一些行为
  • 所以定义类就是在描述事物,就是在给类中定义类的成员(字段和方法);

 

手机:颜色,大小,重量等状态;打电话功能
类来对对象进行描述
   对象里的状态:成员变量(字段Field)(ps:字段不能叫属性,属性是javabean特有的)
   对象里的功能:方法
类和对象的关系:类对对象描述,对象是实实在在存在的个体

 

 

 

类的定义:

  • 状态:  使用成员变量来描述[Field 字段]
  • 功能:  使用 方法来描述

注意:

  • 类名和方法名:类名 首字母大写 方法名首字母小写 StudentXxxOoo,void studentScore(){}
  • 修饰符可以是 public ,final 或则省略
  • goto const 不是关键字 但是作为保留字 保留了下来,我们定义变量的时候不能使用

 

  

/*
    描述手机这一类事物
*/

class CellPhone
{
    //状态:  使用成员变量来描述[Field 字段]
    String brand;//品牌

    String color;//颜色

    double price;//价格


    //功能:  使用 方法来描述
    
    //打电话
    void  call()
    {
    
    }

    //发短信
    void  sendMsg()
    {
    
    }

    //描述自身信息
    void  showInfo()
    {
        System.out.println(brand +"-->"+color+"-->"+ price);
    }

}


class Demo 
{
    public static void main(String[] args) 
    {
        //我现在需要一部手机
        // new 类名();//表示创建一个对象
        

        //创建了(对象)一部手机,并把这个手机赋给一个表示手机的一个变量,phone 就是这个对象的别名
        CellPhone myPhone = new CellPhone();//表示创建了一个手机,手机属于手机类型

        //给手机搞点颜色.给哪部手机弄颜色
        myPhone.color = "红色";

        //调用手机显示自身信息的功能
        myPhone.showInfo();
        

        //打电话
        myPhone.call();

    }
}
类的定义
 1 /*
 2     我给小丽打电话
 3 
 4 
 5 */
 6 
 7 //描述手机
 8 class CellPhone
 9 {
10     //手机有连接信息信息
11     void  connected(String phoneNum)
12     {
13         System.out.println("正在和" + phoneNum +"连接");
14     }
15 }
16 
17 
18 //描述人类
19 class  Person
20 {    
21     /*   1表示男的, 0表示女的, -1表示未知的*/
22     int gender = 1; //性别
23 
24 
25     String phoneNum;//联系方式
26     
27 
28     //打电话行为
29     void  call(CellPhone phone, String phoneNum)
30     {
31         //调用手机通信的功能
32         phone.connected(phoneNum);
33     }
34 }
35 
36 class Demo2 
37 {
38     public static void main(String[] args) 
39     {
40         Person me = new Person();//创建一个对象表示我
41 
42         Person xiaoli = new Person();
43         xiaoli.phoneNum = "110";//给小丽一个电话号码
44         
45 
46         //造一个手机
47 
48         CellPhone iphone = new CellPhone();
49 
50         //调用void  call(CellPhone phone, String phoneNum)
51         me.call(iphone,xiaoli.phoneNum);
52     }
53 }
类的定义2

 

 

 

转载于:https://www.cnblogs.com/WestVillagedevil/p/6089592.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值