1.面向对象与面向过程

面向过程:

优点:

代码直观,相对容易看出代码走向,我们是根据功能去直接开发

自上而下

缺点:

代码的维护与扩展、再次利用比较困难

面向对象

优点:

代码相对易维护,相对易扩展、代码可复用率高

缺点:

代码的封装,与面向过程比较会稍微难看出一点走势

2.面向对象

面向对象两大核心点:

静——属性

动——方法

public class Dog {     //颜色string color;//种类string kind;//宠物名称string dogName;//宠物性别string dogsex;//宠物年龄int dogAge;//疫苗接种情况boo1ean vaccineF1ag;/**这是吃东西的方法aparam food被吃的食物*/public void eat(string food){system.out.print1n("毛色为: "+color+"的"+dogName+"在吃"+food)}
}

3.类图

属性和方法的前面符号:

+public

-private

属性的:后面跟的是他的一个类型

方法的:后面跟的是他的一个返回值

4.关于类和对象

此时我们可以说Dog是一个类

他是属于所有狗的集合,是一个抽象的概念,抽象说明不存在,我们不会看到一个"狗”

但是我们会看到各种各样的“狗"的对象

比如:被常威打的来福

蜡笔小新的小狗——小白

等等,这些都是属于看得见的摸得着的,这种属于对象。

//第一个Dog是我们这个对象的类型
//相当于我们使用1aiFu这个名字声明了一个对象,这个对象是Dog类型的
// = new Dog();相当于我们给这个1aiFu进行了赋值
//我们通过new这个关键字,将Dog这个类进行了实例化。
//此时我们就有了一个Dog的对象叫1aiFu
Dog laiFu = new Dog();
//我们可以通过对象+.去获取这个对象的属性与方法
//比如,我们使用1aiFu这个对象去获取到这个对象的属性dogName
//并且给这个dogName赋值“来福”
laiFu.dogName ="来福";
//完成赋值后,我们可以直接使用这个属性
System.out.println(1aiFu.dogName);
1aiFu.color="黄色";
// 1aiFu是Dog类,Dog类有一个方法叫吃
//这个eat方法中也使用到了Dog的2个属性,分别是color和dogName
1aiFu.eat("骨头");Dog xiaoBai = new Dog();xiaoBai.color="黑色";
xiaoBai.dogName="小黑";
xiaoBai.eat("狗吃的罐头");//第一个Dog是相当于作为这个对象的申明数据类型,是这个类的名字
//第二个dog是对象的名字,相当于我们声明了一个叫做dog的对象
//第三个Dog是说明,我们这个dog对象是使用Dog这个类进行实例化的
Dog dog = new Dog();
//多态
//面向对象知识点一般是三大和性:封装 继承 多态
//这里讲的我们申明了一个叫做object的对象,这个object的类型是object
//object中文意思是"对象"
//在Java的世界中,所有的类(基本数据类型不属于类)
//都直接或间接继承了object
//所有的对象都是"对象"(object类)
Object object = new Dog();

5.关于类的属性和方法

类的属性一般直接写在类中,我们先写一个访问修饰符,再写一个他的数据类型,属性的名字。比如,我们有一个类叫做Dog类,他有一个属性叫做name是String类型,访问修饰符为共有的,所有都可以调用。

public class Dog{public String name;
}

方法:

//方法由
//修饰符[public/static/final]  返回类型[void-无返回类型,引用数据类型-String/自定义类,基本数据类型-八大基本数据类型]  方法名(参数){方法体}/**
*比如我们有一个方法叫做play
*我们先写访问修饰符,再写是否为静态static,再写是否为不可改变的fina1 等修饰符
*比如这个play方法,就有两个修饰符,一个是共有的,一个是静态的
*返回类型,返回类型可以是无返回-void可以是引用数据类型-string/自定义数据类型  基本数据类型-大基本数据类型
*方法名(方法名称都是以小写字母开头,符合驼峰命名法,不可以以数字开头
*之后写一个()括号中可以写参数,我们称新建方法时使用的方法名为形参,在调用时传递的参数为实参*之后写得这里写的内容为我们方法的方法体
*/
pub7ic static string play(string s1){return "这只狗在玩"+s1;
}

JAVA面向对象(OOP)-类和对象相关推荐

  1. Java—面向对象设计—类和对象

    理解面向对象程序设计 面向对象程序(Object-oriented programming,OOP)设计是继面向过程又一具有里程碑意义的编程思想,是现实世界模型的自然延伸.下面从结构化程序设计说起,逐 ...

  2. Educoder/头歌JAVA实训——JAVA面向对象:类与对象

    第1关:什么是类,如何创建类 什么是类 类:类是一个模板,它描述一类对象的行为和属性. 对象:对象是类的一个实例,有 属性 和 行为 . 举个例子: 人是一个 "类",小明就是人的 ...

  3. 狼人杀与血染钟楼的【JAVA面向对象】————类和对象

    目录 一.类 1.什么是类 2.类的定义 3.类的构成 二.对象 1.什么是对象 2.对象的实现 三.static 一.类 1.什么是类 天黑请闭眼! 现在是狼人杀的时间,好了,现在你拿的身份是狼人. ...

  4. 头歌java面向对象,类与对象

    第二关 构造方法 编程要求 根据提示,在右侧编辑器Begin-End处补充代码: 创建一个Person类,给Person类定义一个无参构造方法和一个有参构造方法,有参构造方法定义两个String类型参 ...

  5. java面向对象(类与对象,局部变量成员变量,基本类型和引用类型作为参数传递)...

    一.类和对象的区别 类是对某一类事物的抽象描述,而对象用于表示现实中该类事物的个体 可以将玩具模型看作是一个类,将一个个玩具看作对象,从玩具模型和玩具之间的关系便可以看出类与对象之间的关系.类用于描述 ...

  6. 面向对象系列教材 (一)- Java中的类和对象

    面向对象系列教材 (一)- Java中的类和对象 本章节会引入面向对象的基本概念 (但是不会深入展开,仅仅是引入. 深入的学习会在后续的类和对象以及接口与继承 中展开) 相信你肯定玩过DOTA或者LO ...

  7. oop 类和对象的_实用程序类的OOP替代

    oop 类和对象的 实用程序类(也称为帮助程序类)是仅具有静态方法且不封装状态的"结构". StringUtils , IOUtils , FileUtils从Apache的共享 ...

  8. java基础(三):java面向对象OOP

    java面向对象OOP 基本概念 面向过程与面向对象 面向过程:关注代码实现的细节.复用性 面向对象:先把每个过程的代码实现细节整合到对象中,只要找到对象就能拥有对象身上所有的功能. 面向对象基于面向 ...

  9. JAVA基础––从类和对象开始

    JAVA基础--从类和对象开始 一.概念 1.面向对象中类和对象的概念 对象:对象是具有状态和行为的实体,例如某个具体的学生,或者是王者荣耀里的英雄,可以是物理实体,也可以是逻辑实体. 类:类是一组具 ...

  10. Java基础学习第十三讲:Java面向对象---嵌套类

    Java面向对象-嵌套类.内部类.匿名类 一.static静态 在<Java编程思想>有这样一段话: "static方法就是没有this的方法.在static方法内部不能调用非静 ...

最新文章

  1. 什么是物联网网关?物联网网关具备什么功能?_转
  2. javascript构造函数类和原型prototype定义的属性和方法的区别
  3. 解决:build_attrs() takes at most 2 arguments (3 given)
  4. 无人驾驶(在apollo中添加新车辆)
  5. 如何在Kubernetes容器环境下部署Spinnaker?
  6. android webview 设置cookie时间,解决Android webview设置cookie和cookie丢失的问题
  7. MVVM设计模式和在WPF中的实现(四) 事件绑定
  8. 32位kali安装minidwep_原水_新浪博客
  9. STM32+ADS1110
  10. 工程经济—技术方案不确定性分析
  11. 韦福怎么编译c 语言,c语言第1章 绪论.ppt
  12. ebay增强可用性的4个原则
  13. 项目经验不丰富、技术不突出的程序员怎么打动面试官?
  14. 『转』饯行:理想主义终结年代的七种兵器
  15. 华为吹响“伙伴暨开发者”集结号:共赢数字时代
  16. 第三章:SQL——视图操作
  17. 集成显卡 独立显卡 CPU核心显卡的区别
  18. chrome谷歌浏览器:您使用的是不受支持的命令行标记:--extensions-on-chrome-urls
  19. 基于flask徐州市天气信息可视化分析系统 毕设源码04600
  20. 了解游戏测试主要工作及主要流程

热门文章

  1. protoc did not exit cleanly
  2. Landscape - 使用Landscape Gizmo复制地形
  3. 微信公众号授权及关注
  4. 基于FFmpeg+rtsp读取摄像头实时图像
  5. 华视身份证阅读器SDK使用手册
  6. WLW blog 小技巧
  7. 荣耀路由2 虚拟服务器,华为荣耀路由器2怎么设置? | 192路由网
  8. ad服务器做虚拟化,为虚拟桌面准备AD服务器
  9. 连接器E-mark认证要准备什么资料?
  10. c语言实现rsa签名验证,C语言openssl库RSA签名