Day27-万物皆对象


在世间的任何事物,都可以成为对象,以至于我一度怀疑这个世界的真实性。也许我们只是生存在网络里。而网络的外端才是把我们创造出来的人,只是他们的文明比我们更高,我们无法发现。因为没有人知道宇宙的边界到底是什么。


扯个闲篇。没有对象的程序员可以自己new一个出来【来自程序员的烂梗】


Java中都是以类来作为单位的。
而类是什么?

类是class,也称为类型,类也可以理解为一个模板。

就像人类,人类可以按肤色分为黑种人、白种人、黄种人。只是属性不同,但是我们同属于人类。人类中封装了我们拥有人的属性,比如:头颅,四肢,躯干等等。也封装了我们拥有人的方法,比如:进食,运动,上厕所等等。

而拥有相同属性和相同方法的事物的集合,我们可以称为类。

//创建一个人类
public class Human(){String name;  //具有姓名的属性char sex;     //具有性别的属性int age;    //具有年龄的属性/***  拥有进食的方法。*/void eat(){System.out.println("吃东西");}/****/void show(){System.out.println("I am"+name+",I am "+age)}/*** 拥有运动的方法*/void sport(){System.out.println("运动");}
}

属性:可以理解为一个名词。比如姓名就是一个名词
方法:可以理解为一个动作。比如进食就是一个动作
当然我们人类不仅仅只有这些属性和方法。以上只是简单举例。

那么比如猴子,他也有以上定义的姓名,年龄,性别的属性,也拥有进食和运动的方法,那它也是人类吗?

当然不是。我们可以根据生物的差异性,而衍生出成千上万的类。就像猴子有尾巴,而人没有。这样猴子就可以构建猴类,但人类和猴类又同属于生物类。因为我们也拥有同样的属性和方法。

那么具体怎么创建一个人呢?也就是怎么new呢?

public void TestHuman(){public static void main(Strimg args[]){Human Tony = new Human();Tony.nam = "Tony";Tony.age = "18";Tony.sex = "male";Tony.show();}
}

通过 new 将类这个模板,具体的实例化,把他变成一个实际的例子。
变成了 Tony ,并赋予了他姓名,年龄,性别等等。拥有和人一样的属性。并让他调用show()方法,介绍自己。

控制台会输出: I am Tony ,I am 18


方法 method 可以改变他的返回类型。

public class Human(){...[中间省略,参照上面那个例子。]...public String speak(){return "Emmmmmmmmm";}
}

之前的返回类型为void,即空类型。就是没有返回。

但出来void以外的所有返回类型,都要又return 来接返回值。而返回值一定要为相应的返回类型。

之后调用的话。

Tony.speak();

控制台并不会输出。
只是调用了这个方法。
需要用变量来接收这个返回值。
如:String speak = Tony.speak();
那么这个 speak的值就变成了"Emmmmmmmmm"。

和Scanner input = new Scanner(System.in);
String name = input.nextLine();
一个道理。


而方法还分为有参方法和无参方法
即:

public class Human(){...[中间省略,参照上面那个例子。]public void eat(String food,String tool){System.out.println("使用"+tool+"吃"+food);}...
}

没有参数的方法,就是无参方法。
而有参数的方法,就是有参方法。
有参方法要给定方法一个参数或多个参数。
就像上面这个例子,

eat()方法,执行吃这个动作的话,肯定需要参数食物,就是吃什么?
总要有个东西,肯定需要工具,就是拿什么吃?

别说可以不用工具,用手也是工具,用嘴巴也是工具。


扯了半天。

Day27-万物皆对象相关推荐

  1. javascript”面向对象编程”- 1万物皆对象

    javascript几乎成了如今web开发人员必学必会的一门语言,但很多人却只停在了一些表单验证等基础操作层面上,在面向对象语言大行其道的当下,我们需要去学习javascript的面向对象的知识,以便 ...

  2. python一切皆对象的理解_在 Python 中万物皆对象

    在 Python 中一切都是对象,并且几乎一切都有属性和方法.所有的函数都有一个内置的 __doc__ 属性,它会返回在函数源代码中定义的 doc string:sys 模块是一个对象,它有一个叫作 ...

  3. 理解“万事万物皆对象”

    什么是对象? 对象(Object)是一个应用系统中的用来描述客观事物的实体,是有特定属性和行为(方法)的基本运行单位.是类的一个特殊状态下的实例.对象可以是一个实体.一个名词.一个可以想象为有自己标识 ...

  4. Python源码解读之一 万物皆对象(上)

    万物皆对象 初探对象 Python中一切皆对象,在Python的世界里面,所有东西都是对象.整型.字符串.字典.int.str.list.class自定义类都是对象. 像int.str.list等基本 ...

  5. Java的 “万物皆对象“

    面向对象 面向过程和面向对象的区别 类和对象的关系 类和对象的创建 类的创建 对象的创建 构造器 构造器重载 this的使用 static修饰 代码块 包(import) 面向过程和面向对象的区别 面 ...

  6. scala(4)-万物皆对象

    转载:http://blog.csdn.net/y3wegy/article/details/8024880 Scala作为一个纯面向对象的语言,于是在Scala中万物皆对象,包括数字和函数.在这方面 ...

  7. 你还认为JS中万物皆对象?

    经常在国内的各大网站博客上看到一句话,叫做JS中万物皆对象,那是否真是如此? 那么,我们先来捋一捋JS中的数据类型,JS中的数据类型有下面几种 Undefined Null Boolean Numbe ...

  8. js对象:从万物皆对象说起

    经常见很多文章中说:在js中万物皆对象,但真的万物皆对象吗?答案肯定是否定的 先不说概念性的东西,我们随便定义一些变量,然后打印出他们的类型,看如下代码: //先定义一些变量; var iNum = ...

  9. Kotlin入门-万物皆对象,基础类型

    Kotlin说:万物皆对象. 可以说,Kotlin全面的接管了所有类型.一统天下. 即是基础,那就需要,通盘了解.按目录来就行.也有Xmind版本 github地址 本文将从下面几个方面去讲解 数字 ...

  10. 万物皆对象,Python的对象概述(简述)

    在 Python 的世界中,一切皆对象.int/list/dict / - 都是对象,除此之外,函数.类本身也是对象,那么,这些对象究竟是什么呢? 注 : 要是看不懂, 直接跳转到最后. 从结果看,P ...

最新文章

  1. HDU 4540 威威猫系列故事――打地鼠(DP)
  2. CVPR 2020 | 将深度学习算法应用于移动端最新研究汇总
  3. 翟季冬:基于国产超算的百万亿参数超大预训练模型训练方法
  4. 开启Sharepoint 2013站点邮箱
  5. AIProCon在线大会笔记之阿里达摩院司罗:为商业搭建语言桥梁
  6. boost::container_hash模块实现哈希图
  7. 九、Pandas高级处理
  8. 资金时间价值的计算机应用视频讲解,第八章资金时间价值与方案经济比选20161018讲解.ppt...
  9. Linux内核分析 - 网络[八补]:IP协议补充
  10. heX:用HTML5和Node.JS开发桌面应用
  11. 卑微测试员自述:入职新公司一个月,就让我做自动化测试?!
  12. b/s模式的服务器性能监控系统,基于B/S模式的PC监控系统及方法
  13. 在线加密视频一机一码播放器
  14. WIN10 重装后的自我救赎 ----恢复谷歌浏览器的数据
  15. 华为笔试题:根据子网掩码判断两个IP地址是否在同一子网,并输出IP1的网络号
  16. python实现下载韩寒博客中的所有文章,在本地存储
  17. python凹多边形分割_凹多边形分割成凸多边形
  18. 游戏录制软件哪个好?游戏录制软件推荐
  19. 听风的插件-集成到设置中
  20. 锤子android 7,锤子新机坚果Pro配置放出:骁龙626处理器、Android 7.1.1系统

热门文章

  1. Mybatis的mapper-locations配置多个mapper路径
  2. 五粮液每瓶提价50元 理由为满足消费者身份需求
  3. 域名租用的时候要注意什么?
  4. 湄洲湾职业技术学院全国计算机二级,湄洲湾职业技术学院计算机协会
  5. JQuery Mobile优秀网站及资源
  6. IPhone WebApp 设计开发工具与资源(转)
  7. “__DEV__“ 探究
  8. selenium 3 ie java_【Java+selenium3】 Firefox/ IE/ Chrome主流瀏覽器自動化環境搭建(一)
  9. python中使用matplotlib绘制图表
  10. C++入门——实现“祖玛”游戏