zoukankan      html  css  js  c++  java
  • 类和对象

    对象是对类进行具体化;类是对对象进行抽象化。

    1.类

    定义:是对同一类别的众多对象的一种抽象,同时还是用来生成对象的一种模板

    约定:类名,首字母要大写,如果是由多个单词组成,每个字母首字母都大写

    class 类名{

      访问修饰符 成员变量的定义;

      访问修饰符 成员函数的定义;

    }

    访问修饰符:默认,public,pricate,protected

    public:公有的,能被所有位置的对象调用

    默认:能被当前包内所有的对象调用

    pricate:私有的,只能被当前class花括号之内的代码访问,其他位置都不能调用

    protected:继承,只要是继承关系就能调用,无论是在当前包还是其他包;只要不是继承关系就不能调用,不管是不是在同一个包中

    类的实例化: 用类来生成对象

    类名 变量名 = new 类名();

    成员变量:(属性)访问修饰符 类型 变量名;

      a.成员变量的定义,如果不赋初始值,会使用默认值。而函数内的局部变量不赋值初始值会出问题。
      b.成员变量可以被当前类的所有的成员函数都可以调用。而函数里面的变量只能在当前花括号中可以使用。

    成员函数:【方法(属性方法和行为方法)】访问修饰符 返回类型 函数名(形参){函数体};

      a.普通成员函数。(属性方法,行为方法)
      b.构造函数。

    构造函数:

    必须与类名相同;不能有返回值;会被自动执行,对象new出来的时候会自动执行;一般都是pubilc

    2.对象

    包括:属性(名词形容词),行为(动词)

    对象初始化的次序:当我们new一个对象的时候。
    1.执行成员变量的定义。
    2.构造函数的内容。

    构造函数与成员变量初始化的执行次序:当我们new一个对象的时候

    先执行成员变量定义--构造函数

    3.方法的重载

    函数名相同,类型不同(包括数量,类型,位置)

    两个及以上的函数(函数名相同,类型不同的函数)就形成了函数重载

    函数重载只和函数名,类型有关;和函数的返回类型无关

    重载之后的函数调用:

      根据调用函数的实参决定调用哪一个重载函数

    无论是构造函数还是普通函数都能进行重载。

    this. 指的是对象。

    其中

    public GouZao(String name){
       this.name=name;
      }
    public GouZao(){
       
      }

    这两个函数就形成了函数的重载,并且是构造函数的重载

    当new一个新的对象的时候,会根据实参来决定调用哪个函数

    结果:

  • 相关阅读:
    autoreleasepool
    #ifndef/#define/#endif
    类工厂创建单例
    第一篇献给你:Block的回调
    博客纪念日
    [系列教程] Discuz模板的制作方法
    使用Discuz!后台备份和恢复Discuz!站点数据库的方法教程
    discuz x2.5 还原教程
    80后公务员辞职自述:7年收入没涨 能力是听话
    公务员队伍开始动荡了吗?
  • 原文地址:https://www.cnblogs.com/dnf1612/p/6225172.html
Copyright © 2011-2022 走看看