Java面向对象--类与对象

面向对象 (OOP:object-oriented programming )

类与对象


面向对象程序设计

- 开发方法
    - 面向功能划分软件结构
    - 自顶而下
    - 最小的子系统是方法
    - 制约了软件的可维护性和可扩展性
- 面向对象开发
    - 把软件系统看成各种对象的集合
    - 系统结构较稳定
    - 子系统相对独立
    - 软件可重用性,可维护性和可扩展性强

1、对象

用来描述客观事物的一个实体,由一组属性和方法构成

  1. 万物皆对象
  2. 一段程序实际上就是多个对象通过发送消息来告诉彼此要干什么
  3. 从内存角度而言每一个对象都是由其他更基础的对象组成的
  4. 每一个对象都有类型
  5. 同一类型的对象可以接收相同的信息

Grady Booch 对对象做了一种更为简介的描述:
对象具有状态、行为及标识
这意味着对象可以拥有自己的内部数据(赋予其状态)、方法(用于产生行为),同时每一个对象都有别于其他对象。也就是说,每一个对象在内存中都有唯一的地址
注: 这个说法并不全面,对象可以保存在不同的机器或内存地址中,甚至可以保存在磁盘上。在上述情况中,对象的标识(identity)就需要用其他方式而非内存地址来表示

对象的特征
  • 属性——对象具有的各种特征
    • 每个对象的每个属性都拥有特定值
  • 方法——对象执行的操作
类和对象的关系
  • 类是抽象的概念,仅仅是模板
    • 比如说:“人”
  • 对象是一个你能够看得到、摸得着的具体实体
Java 是面向对象的语言
  • 所有Java程序都以类class为组织单元
  • 关键字class定义自定义的数据类型
    被class修饰的就是类
    public class HelloWorld{
        public static void main (String[] args){
            System.out.println("Hello World!!!")
        }
    }
Java类模板
  • 类将现实世界中的概念模拟到计算机程序中
    public class 类名{ //类名首字母大写
        //定义属性部分
        属性1的类型 属性1:
        ...
        属性n的类型 属性n:
        //定义方法部分
        方法1:
        ...
        方法m;
    }
定义类的步骤:
1.定义类名
2.编写类的属性
3.编写类的方法
如何创建和使用对象
  • 使用对象的步骤
    • 创建对象
      • 类名 对象名 = new 类名();
      School school=new School();
      
    • 引用对象成员:使用 “.” 进行以下操作
      • 引用类的属性: 对象名.属性
      • 引用类的方法: 对象名.方法名()
          center.name="清华大学";//给name属性赋值
          center.showCenter(); //调用showCenter()方法
      
return 方法的返回值
  • 两种情况
    • 如果方法具有返回值,方法中必须使用关键字return返回该值,返回值类型为该值的类型
    • 返回值只能有一个
    public class Student{
        String name="张三";
        public String getName(){
            return name; //作用:跳出方法、返回结果
        }
    }
    
    • 如果方法没有返回值,返回值类型为void
   public String showName(){//String 表示showName方法有返回值 并且返回值类型是String

        return "清华";//return后面跟返回值 只能执行一次 return
        //return 1.结束当前方法 2.返回 return 后的数据
        //return 也可以用在没有返回值的方法中

    }

方法调用

  • 方法之间允许相互调用,不需要知道方法的具体实现,实现重用,提高效率
情况举例
Student类的方法a()调用Student类的方法b(),直接调用public void a(){ b();//调用b() }
Student类的方法a()调用Teacher类的方法b(),先创建类对象,然后使用 “.” 调用public void a(){ Teacher t=new Teacher(); t.b(); //调用Teacher类的b() }

1.2对象具有接口

  • 创建抽象数据类型(即“类”)是面向对象编程的一个基本概念。
  • 因为类描述了一系列具有相同特征(即数据元素)和行为(即功能方法)的对象,而即便是浮点数这种内置数据类型也具有一系列的行为和特征,所以类其实就是数据类型。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值