笔记:

  1. 什么是类?什么是对象?

    • 现实生活中是由很多很多对象组成的,基于对象抽出了类

    • 对象:软件中真实存在的单个个体/东西

      类:类别/类型,代表一类个体

    • 类是对象的模子,对象是类的具体的实例

    • 类中可以包含:

      • 对象的属性/特征-----------------------成员变量
      • 对象的行为/动作-----------------------方法
    • 一个类可以创建多个对象

  2. 如何创建类?如何创建对象?如何访问成员?

    public class Student { //Student类就是我们自己造的一种引用类型
    //成员变量
    String name;
    int age;
    String address;
    //方法
    void study(){
    System.out.println(name+"在学习...");
    }
    void sayHi(){
    System.out.println("大家好,我叫"+name+",今年"+age+"岁了,家住"+address);
    }
    } public class StudentTest {
    public static void main(String[] args){
    //创建一个学生对象
    Student zs = new Student();
    //给成员变量赋值
    zs.name = "zhangsan";
    zs.age = 25;
    zs.address = "河北廊坊";
    //调用方法
    zs.study();
    zs.sayHi(); Student ls = new Student();
    ls.name = "lisi";
    ls.age = 24;
    ls.address = "黑龙江佳木斯";
    ls.study();
    ls.sayHi(); //1)创建了一个学生对象
    //2)给所有成员变量赋默认值
    Student ww = new Student();
    ww.study();
    ww.sayHi(); }
    }
  3. 方法的重载(overload/overloading):---------------更加方便用户的访问

    • 发生在同一类中,方法名相同,参数列表不同
    • 编译器在编译时会根据方法的签名自动绑定方法
    //重载的演示
    public class OverloadDemo {
    public static void main(String[] args) {
    Aoo o = new Aoo();
    o.show(); //编译器根据方法的签名自动绑定方法
    o.show("zhangsan");
    o.show(25);
    o.show("zhangsan",25);
    o.show(25,"zhangsan");
    }
    } class Aoo{
    void show(){}
    void show(String name){}
    void show(int age){}
    void show(String name,int age){}
    void show(int age,String name){}
    //int show(){ return 1;} //编译错误,重载与返回值类型无关
    //void show(String address){} //编译错误,重载与参数名称无关
    }

精华笔记:

  1. 什么是类?什么是对象?

    • 现实生活中是由很多很多对象组成的,基于对象抽出了类

    • 对象:软件中真实存在的单个个体/东西

      类:类别/类型,代表一类个体

    • 类是对象的模子,对象是类的具体的实例

    • 类中可以包含:

      • 对象的属性/特征-----------------------成员变量
      • 对象的行为/动作-----------------------方法
    • 一个类可以创建多个对象

  2. 如何创建类?如何创建对象?如何访问成员?

  3. 方法的重载(overload/overloading):---------------更加方便用户的访问

    • 发生在同一类中,方法名相同,参数列表不同
    • 编译器在编译时会根据方法的签名自动绑定方法

ooday01类_对象_访问成员的更多相关文章

  1. 获取class对象的三种方法以及通过Class对象获取某个类中变量,方法,访问成员

    public class ReflexAndClass { public static void main(String[] args) throws Exception { /** * 获取Clas ...

  2. 四、java基础-面向过程_对象_类中可出现的因素

    1.面向过程和面向对象区别: 1)面向过程:开发一个应用程序.一个项目,必须先了解整个过程,了解各个步骤.模块间的因果关系,使的面向过程方式去开发程序时,代码和代码之间的关联程度是非常强.所以其中任何 ...

  3. java语言基础(四)_面向对象_类_对象_封装_构造

    面向对象 Java语言是一种面向对象的程序设计语言,而面向对象思想是一种程序设计思想,我们在面向对象思想的指引下,使用Java语言去设计.开发计算机程序. 这里的对象泛指现实中一切事物,每种事物都具备 ...

  4. c++中的类和对象_概念

    类:事物所具有的共性(行为.属性)抽象出来封装在一起 对象:由类型实例化出对象 c++与c struct的区别:c中不能存放函数,只能存放属性,方法和属性分离,c++中则可存放函数. c中表示事物的方 ...

  5. java类与对象_成员变量和局部变量区别

    成员变量和局部变量:1.成员变量:再类中定义,用来描述对象将要有什么.2.局部变量:在类的方法中定义,在方法中临时保存数据.区别:1.作用域不同:  局部:仅限于定义它的方法  成员:整个类中都是可见 ...

  6. Python学习笔记008_类_对象_继承_组合_类相关的BIF

    # 对象 = 属性 + 方法>>> # Python中的类名约定以大写字母开始>>> # tt = Turtle() 这就是创建类实例的方法,其它语言用new ,它 ...

  7. PoEdu - C++阶段班【Po学校】- Lesson02_类与对象_第4天

    复习:上节作业讲解 注意点: 设计SetString()的时候,要注意重置原来的空间. char * SetString(const char *str) { _len = strlen(str); ...

  8. 类实例化对象可以访问静态(static)方法,但是不能访问静态属性。

    类-> 访问->静态方法(类的方法)->可以 类 ->访问->普通方法(对象的方法)->不可以(虽然方法里不用$this关键字时,可以!但不支持这种写法) 类-&g ...

  9. 1. js数据类型_对象_函数_内存

    1. js数据类型有哪些? 基本(值)类型 Number ---- 任意数值 String ---- 任意字符串 Boolean ---- true/false undefined ---- unde ...

随机推荐

  1. 浅尝Spring注解开发_Bean生命周期及执行过程

    Spring注解开发 浅尝Spring注解开发,基于Spring 4.3.12 包含Bean生命周期.自定义初始化方法.Debug BeanPostProcessor执行过程及在Spring底层中的应 ...

  2. centos 7.0 下安装FFmpeg软件 过程

    这几天由于需要编写一个语音识别功能,用到了百度语音识别接口,从web端或小程序端传上来的音频文件是aac或者mp3或者wav格式的,需要使用FFmpeg进行格式转换,以符合百度api的要求. 安装FF ...

  3. Keepalived入门学习

    一个执着于技术的公众号 Keepalived简介 Keepalived 是使用C语言编写的路由热备软件,该项目软件起初是专门为LVS负载均衡设计的,用来管理并监控LVS集群系统中各个服务节点的状态,后 ...

  4. 论文解读《Deep Attention-guided Graph Clustering with Dual Self-supervision》

    论文信息 论文标题:Deep Attention-guided Graph Clustering with Dual Self-supervision论文作者:Zhihao Peng, Hui Liu ...

  5. 好客租房45-react组件基础综合案例-6边界问题

    边界问题 //导入react import React from 'react' import ReactDOM from 'react-dom' //导入组件 // 约定1:类组件必须以大写字母开头 ...

  6. 基于surging网络组件多协议适配的平台化发展

    前言                Surging 发展已经有快6年的时间,经过这些年的发展,功能框架也趋于成熟,但是针对于商业化需求还需要不断的打磨,前段时间客户找到我想升级成平台化,针对他的需求我 ...

  7. 手绘图解java类加载原理

    摘要:这也许是全网"最大"."最细"."最深"的java类加载原理图解了. 本文分享自华为云社区<[读书会第12期]这也许是全网&qu ...

  8. Nanodet模型部署(ncnn,openvino)/YOLOX部署(TensorRT)

    Nanodet模型部署(ncnn,openvino) nanodet官方代码库nanodet 1. nanodet模型部署在openvino上 step1: 参考链接 nanodet官方demo op ...

  9. 《Unix 网络编程》11:名字和地址转换

    名字和地址转换 系列文章导航:<Unix 网络编程>笔记 域名系统 简介 域名系统主要用于主机名字和 IP 地址之间的映射.主机名可以是: 简单名字,如:centos01 全限定域名(FQ ...

  10. SQL Server 2019企业版和标准版的区别?

    来源公众号:SQL数据库运维 原文链接:https://mp.weixin.qq.com/s?__biz=MzI1NTQyNzg3MQ==&mid=2247485400&idx=1&a ...