博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
5.2 面向对象上
阅读量:4514 次
发布时间:2019-06-08

本文共 2144 字,大约阅读时间需要 7 分钟。

面向对象(上):

  1, 什么是面向对象, 什么是面向过程 ?

              面向对象是用什么方法做某事,这件事是对象,方法不管

              面向过程是用什么方法做某事,这个方法就是过程

  2, 类, 对象, 成员变量(属性,静态属性), 成员方法(方法, 动态属性), 局部变量分别的含义 ?
  3, 面向对象的特点有什么 ?
    封装
      private(public)
    继承
    多态   重名的变量名有不同的表现形式
      Cut
      Cut

  4, 如何在程序中创建一个对象 ?(首先要定义一个类)

    类体
      成员变量的作用范围(整个类)
    练习: 编写一个Person的类, 使其有一个方法可以调用, 并打印出姓名和年龄
        我叫..., 今年多少岁

    类和类之间的关系

      关联关系(不好下一个定义描述关联关系, 比较弱的关系)

        一个类中的某个方法的参数是另一个类的对象

        一个类中的成员变量是另一个类的对象

      *继承关系(extends关键字)

        什么是一种什么
      聚合关系
        聚集
          球队->队长   不是比不可少的
        组合
          一个类的组成部分是必不可少的
      *实现关系
        机器人:
          走
          跑
          跳

   5, 成员变量在类中是如何初始化的 ?

      byte      0
      short       0
      int              0
      long      0L
      float      0.0F
      double     0.0D
      boolean           false
      char      '/u0000'
      引用类型    null
      (引用类型是:所有的类, 所有的接口, 所有的数组)  

    6, 如何更好的设计一个类 ?

      合适的方法出现在合适的类里面
    7, 什么是类的封装 ?
      private关键字修饰的成员变量, 只能在当前类中使用   需要用get,set

public class Emp {    // 构造方法/*    public Emp() {        System.out.println("空参的构造方法");        name = "Tom";        sal = 12345;        age = 30;    }*/    public Emp() {}        public Emp(String _name, int _age) {     //对外公开的方法        System.out.println("有参数的构造方法被调用了");        name = _name;        age = _age;    }    private String name; // 姓名    private double sal; // 工资    private int age; // 0 - 120 1000    public void introduce() {        System.out.println("我叫" + name + ", 工资是: " + sal + "今年" + age + "岁");    }    public String getName() {        return name;    }    public void setName(String name) {        this.name = name;    }    public double getSal() {        return sal;    }    public void setSal(double sal) {        this.sal = sal;    }    public int getAge() {        return age;    }    public void setAge(int age) {        this.age = age;    }}

    8, 什么叫构造方法 ? 构造方法的重载 ? // 方法名相同, 参数列表不同

      构造方法:
        就是用来构造一个对象的方法
        1, 构造方法没有返回值, 没有返回值也不能写void
        2, 构造方法名与类名一模一样
        3, 定义一个类的时候, 如果没有写任意的一个构造方法, 则默认生成一个空参的构造方法
        4, 当一个类中有定义的带参数的构造方法的时候, 则空参的构造方法会消失
       

 

转载于:https://www.cnblogs.com/syx1997/p/8991002.html

你可能感兴趣的文章
topcoder SRM 625 DIV2 AddMultiply
查看>>
Leetcode Climbing Stairs
查看>>
腾讯2013实习笔试题
查看>>
Recipe 1.9. Processing a String One Word at a Time
查看>>
Linux 下查看系统是32位 还是64 位的方法
查看>>
MySQL 引擎 和 InnoDB并发控制 简介
查看>>
Dave Python 练习二
查看>>
Integer类之成员变量
查看>>
菜根谭#179
查看>>
如何获取多个字符串中最长的共同子字符串?
查看>>
Android 开发笔记___textvieww__跑马灯效果
查看>>
[ JS 进阶 ] 闭包,作用域链,垃圾回收,内存泄露
查看>>
GitHub注册与Git安装
查看>>
ThinkPHP 更新数据 save方法
查看>>
Bshare自定义分享按钮
查看>>
11Qt样式表
查看>>
轮询/长轮询
查看>>
IOS开发-懒加载\延迟加载-图片浏览器实例
查看>>
何从之
查看>>
[Ext JS 4] contentEL,renderTo, applyTo 释义与区别
查看>>