JAVA基础——从类和对象开始

一、概念
1.面向对象中类和对象的概念
对象:对象是具有状态和行为的实体,例如某个具体的学生,或者是王者荣耀里的英雄,可以是物理实体,也可以是逻辑实体。
类:类是一组具有共同属性的对象的集合,例如一个学校的学生,都具有学号、姓名等属性,可以看作一个学生类。或者是王者荣耀里的英雄,都具有血量、名称、攻击力、大招等属性,也是一个类。

2.类和对象的特征以及关联
一个类是由属性和函数构成。属性是一些变量构成,而函数是类的行为,可以完成类的一些功能。例如学生类里面,学生的姓名学号就是类的属性,学生学习了某门课程这个行为,就是类的一个函数。类可以具体的实例化,构造对象。每个对象都具有唯一性,并且有属性和行为构成。例如一个学生张三就是学生类的一个具体对象,他既有姓名学号等属性,也有学习等行为。

二、用JAVA构造类和对象
用一个实例来说明
//写一段代码,让鲁班和亚瑟两个英雄PK,采用回合制,每次攻击让对方的血量减少攻击方的攻击值。重复,直到某一方血量小于等于0结束。
1.类分析
可以把鲁班和亚瑟看作是同一个类,即英雄类。该类应该包括的属性有(英雄名字/血量/攻击力),包括的函数有攻击函数,让对方的血量减少自己的攻击力。类的构造方法如下

public class Player {private String name; // 英雄名字private int blood; // 英雄血量private int attactn;// 英雄攻击力public void setname(String n) { // 设置名字name = n;}public String getname() { // 获取名字return name;}public void setblood(int b) {// 设置血量blood = b;}public int getblood() {// 获取血量return blood;}public void setattactn(int a) {// 设置攻击力attactn = a;}public int getattactn() {// 获取攻击力return attactn;}public void attact(Player p) {// 攻击函数p.setblood(p.getblood() - attactn);System.out.println(name + "正在攻击" + p.getname() + ",掉血" + attactn + "剩余血量" + p.getblood());   }
}

注意:
1.出于安全性和封装考虑,类的属性一般都用private私有类型,函数采用public公有型。而想要设置或者得到属性的值就要在类里设置函数来更改或得到属性值,一般采用set+属性名和get+属性名的方式。
2.要清楚函数的性质来定义数据类型,例如不用返回值而只是实施一些操作用空值void,而有返回值的情况下根据返回值的数据类型定义函数,int,string等
3.函数的参数如果有对象类型,要实例化,例如上面Player p;
4.也可以构造两个类,亚瑟类和鲁班类,并为之设置相应的属性和函数,最后两个类分别实例化再执行攻击函数。
5.类的首字母要大写,养成好习惯。

2.对象分析

public class Main {//主函数public static void main(String[] args) {Player p1=new Player();p1.setname("鲁班");p1.setblood(100);p1.setattactn(10);//实例化鲁班Player p2=new Player();p2.setname("亚瑟");p2.setblood(110);p2.setattactn(7);//实例化亚瑟while(p1.getblood()>0&&p2.getblood()>0) {if(p1.getblood>0)p1.attact(p2);//攻击if(p2.getblood()>0)p2.attact(p1);}if(p1.getblood()<=0)System.out.println("鲁班赢了");elseSystem.out.println("亚瑟赢了");}}

在主函数中实例化了两个对象p1和p2,并完善属性。对象的实例化用
类名 对象名=new 类名();
实例化对象以后,对象调用类的函数用 对象名.函数名(参数)
现在就可以相互比较两个对象的属性,或者是执行一些操作。需要注意的是,在类的属性是private,所以对象的属性也是如此,若想得到或者重设对象的属性一定要使用set或者get函数来完成。
最后用一个循环完成回合制的攻击并用选择语句判断输赢。
以上就是关于JAVA中类和对象的基础学习。

JAVA基础––从类和对象开始相关推荐

  1. JAVA基础七 类和对象

    文章目录 JAVA基础七 类和对象 01 引用 02 继承 03 方法重载 04 构造方法 05 this 06 传参 07 包 08 访问修饰符 09 类属性 10 类方法 11 属性初始化 12 ...

  2. java基础(类与对象、集合)

    java基础(类与对象.集合) 类与对象 类与对象中的栈和堆 构造方法 this关键字 面向对象三大特性 封装性(private) 继承性(extends) 方法重写(@override) 多态性 向 ...

  3. Java基础18-String类【String类的特点对象个数常用方法】【超详细讲解】

    Java基础-String类[超详细讲解] String类的特点 String在java.lang.String包中 1:特点 (1)String类型不能被继承,因为由final修饰 (2)Strin ...

  4. Java基础-Date类常用方法介绍

    Java基础-Date类常用方法介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.毫秒值概念 我们在查阅Date类的API文档时,会发现这样的一句话:"The cl ...

  5. java基础-BigDecimal类常用方法介绍

    java基础-BigDecimal类常用方法介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.BigDecimal类概述 我们知道浮点数的计算结果是未知的.原因是计算机二进制 ...

  6. 第二十九节:Java基础知识-类,多态,Object,数组和字符串

    前言 Java基础知识-类,多态,Object,数组和字符串,回顾,继承,类的多态性,多态,向上转型和向下转型,Object,数组,多维数组,字符串,字符串比较. 回顾 类的定义格式: [类的修饰符] ...

  7. Java_面向对象基础(类、对象、方法和构造函数)

    Java的面向对象基础(类.对象.方法和构造函数) 面向对象的基本概念 面向对象的设计思想 什么是类 什么是对象 类的定义 设计面向对象的例子 步骤一:设计动物这个类 步骤二:创建具体的动物 步骤三: ...

  8. Java基础 时间相关类小结[Timestamp,Date,Calendar]

    Java基础 时间相关类[Timestamp,Date,Calendar] 前言 一.Timestamp(时间戳) 二.Date(日期) 三.Calendar(日历) 四.Timestamp.Date ...

  9. Java基础教程-05-面向对象

    Java基础教程-05-面向对象 1. 面向过程和面向对象解释 1.1 面向过程 1.1.1 简述 我们回想一下, 前面我们完成一个需求的步骤是怎样的? 首先是搞清楚我们要做什么. 然后在分析怎么做. ...

最新文章

  1. winform 窗口 属性
  2. 【Python基础】Python3十大经典错误及解决办法
  3. linux查看redis索引,linux的redis操作命令
  4. c# 定位内存快速增长_改善C#程序,提高程序运行效率的50种方法
  5. SQOOP 基础及安装
  6. 3.sf2 核心目录及文件结构
  7. Spring+Quartz 整合二:调度管理与定时任务分离
  8. maya2022|autodesk maya 2022新功能介绍
  9. 阿里云天气汇率API代码片段
  10. IsPostBack深入探讨
  11. js设计模式之单例模式
  12. 35、T5L 迪文屏C51开发之音频播放
  13. 平均查找长度 (ASL)
  14. DOSBOX——DEBUG的简单使用
  15. Android拼接合并图片生成长图
  16. 【沧海拾昧】WiFi串口通信ESP8266模块基本介绍(附野火WiFi透传实例)
  17. JSON对象转换成Byte(字节)数组
  18. 面试题:MySQL优化
  19. XML基础(一)(只管能看懂XML文件)
  20. 一篇文章让你搞懂Java中的静态代理和动态代理

热门文章

  1. 英文网站推广常用方法有哪些
  2. 学习es6中class——整合阮一峰教程、MDN
  3. 电脑一直刷频,求解答
  4. Eureka健康检查
  5. centos离线配置yun源
  6. 2017.08.05
  7. 蓝墨云班课与中职计算机课,蓝墨云环境下中职《计算机应用基础》的对分课堂教学研究...
  8. TVB经典电视剧--《创世纪》回忆
  9. SerialPort-4.0.+ 使用说明(Kotlin版本)
  10. 近视200度能学计算机吗,近视200度能不能恢复 近视200度该怎么办