java ---- 认识类和对象
---- 开发方法
结构化开发方法特点:
1、面向功能划分软件结构
2、自顶而下
3、最小的子系统是方法
4、制约了软件的可维护性和扩展性
面向对象开发方法特点:
1、把软件系统看成各种对象和集合
2、系统结构较稳定
3、子系统相对独立
4、软件可重用性、可维护性和扩展性强
---- 面向对象程序设计(object Oriented programming 简称OOP)
对象: 用来描述客观事物的一个实体,由一组属性和方法组成
对象的特征 ---- 属性
属性 --- 对象具有的各种特征
每个对象的每个属性都拥有特定的值
比如:英雄周瑜的属性: 姓名 血量 蓝量等。
对象的特征 --- 方法
方法: 对象执行的操作
比如:英雄周瑜的方法: 攻击其他英雄,攻击防御塔,帮助队友加速等
----- 列出小猫的属性和方法
属性有: 颜色、品种 方法有:跑、叫、咬
----- 类和对象
类 : 具有相同属性和方法的一种对象的集合,
关系: 类是对象的抽象,对象是类的具体。
类是抽象的概念,仅仅是模板,比如:“人”
对象是一个可以看得到、摸得着的具体实体
就像人有体重身高 行为有吃喝衣住,
而对于小明这个对象来说他有180 的身高130 的体重会吃苹果住在翻斗大街102栋
---- java是面向对象的语言
所有的java程序都是以类class为组织单元
关键字是class定义的自定义的数据类型
public class HelloWorld{
public static void main(String[] args){
System.out.println("你好帅");
}
}
---- java 类的模板
定义类的步邹:
1、定义类名 2、编写类的属性 3、编写类的方法
public class 类名{
属性类型 属性1;
方法1;
}
要遵循帕斯卡命名规则 类的第一个首字母要大写
属性也叫成员变量 方法也叫成员方法
---- 类图
使用类图来描述类
工具: visio rose
目的: 为了分析和设计类
好处 : 直观、容易理解




---- 创建和使用对象
使用对象的步邹:
1、创建对象: 类名 对象名 = new 类名();
如: School school = new Shcool();
2、引用对象成员:使用“ . ” 来进行操作
引用类的属性:对象名. 属性
引用类的方法: 对象名.方法名
school.name = "坡里中学"; // 给name 属性赋值
school.show(); // 调用show() 方法


----- 类的方法
方法性一个黑匣子,完成某个特定的应用程序功能,并返回结果
类的方法定义类的某种行为(或功能)

---- 方法 的返回值
如果方法具有返回值,方法中必须使用关键字return返回该值,返回值类型为该值的类型
返回值只能有一个,如果没有返回值,返回类型为void

在方法中使用return时 就以会跳出这个方法,如果有返回值只能返回一个值

没有返回值就不用了在使用返回值进行接收

------ 方法调用
方法之间允许相互调用,不需要知道方法的具体实现,实现重用提高效率


----- 制作一个简单计算器
public class Calc {
public int getSum(int num1,int num2){
return num1+num2;
}
public double getSum(double num1,double num2,double num3){
return num1+num2+num3;
}
public static void main(String[] args) {
Calc calc=new Calc();
System.out.println(calc.getSum(67, 89));
System.out.println(calc.getSum(67, 89,78.4));
}
}
--- 查找学员信息
/**
*
* 实现学生信息的管理
*
*/
public class StudentsBiz {
String[] names = new String[30]; // 学员姓名数组 /**
* 增加学生姓名
* @param name要增加的姓名
*/
public void addName(String name){
for(int i =0;i<names.length;i++){
if(names[i]==null){
names[i]=name;
break;
}
}
}
/**
* 显示本班的学生姓名
*/
public void showNames(){
System.out.println("本班学生列表:");
for(int i =0;i<names.length;i++){
if(names[i]!=null){
System.out.print(names[i]+"\t");
}
}
System.out.println();
} /**
* 在一定区间查找学生姓名
* @param start 开始位置
* @param end 结束位置
* @param name 查找的姓名
* @return find 是否查找成功
*/
public boolean searchName(int start,int end,String name){
boolean find = false; // 是否找到标识 // 指定区间数组中,查找姓名
for(int i=start-1;i<end;i++){
if(names[i].equals(name)){
find=true;
break;
}
}
return find;
}
}
import java.util.Scanner;
public class TestSearch {
/**
* 调用带3个参数的方法
*/
public static void main(String[] args) {
StudentsBiz st = new StudentsBiz();
Scanner input = new Scanner(System.in);
for(int i=0;i<5;i++){
System.out.print("请输入学生姓名:");
String newName = input.next();
st.addName(newName);
}
st.showNames();
System.out.print("\n请输入开始查找的位置:");
int s = input.nextInt();
System.out.print("请输入结束查找的位置:");
int e = input.nextInt();
System.out.print("请输入查找的姓名:");
String name = input.next();
System.out.println("\n*****查找结果*****");
if(st.searchName(s,e,name)){
System.out.println("找到了!");
}
else{
System.out.println("没找到该学生!");
}
}
}
java ---- 认识类和对象的更多相关文章
- 第31节:Java基础-类与对象
前言 Java基础-类与对象,方法的重载,构造方法的重载,static关键字,main()方法,this关键字,包,访问权限,类的继承,继承性,方法的重写,super变量. 方法的重载:成员方法的重载 ...
- Java面向对象-类与对象
Java面向对象-类与对象 类与对象的关系 我们通俗的举个例子,比如人类是一种类,张三这个人就是人类的具体的一个个体,也就是java中的对象:这就是一个类与对象的关系: 类的定义 下面看实例 类的创建 ...
- 关于Java构造类与对象的思考
简单记录一下Java构造类与对象时的流程以及this和super对于特殊例子的分析. 首先,接着昨天的问题,我做出了几个变形: Pic1.原版: Pic2.去掉了T.foo方法中的this关键字: P ...
- JAVA基础——类和对象
java类与对象学习笔记 一.成员变量和局部变量 (1)定义 1.成员变量 在类中定义,用来描述对象将要有什么.(默认的成员变量值为0) 2.局部变量 在类的方法中定义,在方法中临时保存数据. 演示示 ...
- java(9)类和对象
一.理解什么是类和对象 万事万物皆对象 1.1.属性——对象具有的特征(特点) 1.2.方法——对象可执行的操作(能干什么事) 1.3.对象的定义: 是一个客观存在的,看的见或摸得着的实体,由属性和方 ...
- Java面向对象——类,对象和方法
1.类的概念 在生活中,说到类,可以联想到类别,同类,会想到一类人,一类事物等等.而这一类人或事物都是具有相同特征或特点和行为的,我们根据不同的特征或特点和行为将他们归类或分类.同时,当我们认识一个新 ...
- Java学习——类与对象
在学习面向对象之前首先我们要理解一下几点: 什么是面向对象 对象的概念 类 类与对象的关系/区别 什么是对象的属性 什么是对象的方法 什么是面向对象.对象.类 讲到面向对象就不得提到面向过程,早期的计 ...
- Java面向对象类与对象整理
第一章 面向对象: 1.1 什么是面向过程: 遇到某件事的时候,思考 “我该怎么做”然后一步一步实现的过程 1.2 什么是面向对象: 遇到某件事的时 ...
- java笔记 -- 类与对象
封装: 从形式上看, 封装是将数据和行为组合在一个包中, 并对对象的使用者隐藏了数据的实现方式. 对象中的数据称为实例域, 操纵数据的过程称为方法. 对于每个特定的类实例(对象)都有一组特定的实例域值 ...
- Java:类与对象概念
什么是类? 怎样定义一个类? 什么是对象,类和对象之间是什么关系,怎样创建一个对象? 对象引用和对象在内存中是如何分配的? 什么是类? 1. 类是具有相同的属性和功能的事物的抽象的集合,在面向对象 ...
随机推荐
- Linux实用指令(5)
指定运行级别(系统的制定级别配置文件/etc/inittab): 0:关机 1:单用户(单用户级别root登录不需要密码,进入之后重新设置密码) 2:多用户无网络服务 3:多用户有网络服务 4:系统未 ...
- [转]Java游戏引擎
JME(jMonkey Engine): JME是一个高性能的3D图形API,采用LWJGL作为底层支持.它的后续版本将支持JOGL.JME和Java 3D具有类似的场景结构,开发者必须以树状方式组织 ...
- 本地eyoucms搬家
1.后台数据备份 2.删除install 里面的install.lock 3.清理缓存文件 data - runtime-删除所有文件: 4.项目中的文件全部压缩 即打包完毕:最后再把打包的文件放置到 ...
- uni-app项目配置记录
新建项目 直接使用编辑器快速新建,具体方法很简单,官方文档很详细,这里不在叙说 配置项目: 项目搭建好了之后,我们配置一些 api 和 router,这些直接在插件市场上面进行配置,非常好用 封装的r ...
- 【转载】Gradle学习 第二章:概述
转载地址:http://ask.android-studio.org/?/article/6 Here is a list of some of Gradle's features.<翻译> ...
- MElv2.kkkK
MElv2.kkkK 一.预估与实际 PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟) Planning 计划 • Estimate ...
- MyCat教程三:安装及配置介绍
一.安装MyCat 1.安装准备环境 1.1 安装JDK 因为MyCat是java开发的,所以需要java虚拟机环境,在Linux节点中安装JDK是必须的. 1.2 放开相关端口 在主从节点上 ...
- 让configure和cmake编译时支持调试选项
在Linux先编译软件基本都是采用configure文件生成makefile,或者,cmake生成makefile文件两种方式.它们生成的makefile文件,一般默认不支持-g调试选项.但我们使用这 ...
- ROS学习笔记(二) :使用roslaunch
目录 roslaunch roslaunch的使用 以turtlesim为例 roslaunch roslaunch是ros自带的一个库,使用roslaunch可以同时运行多个节点,通过编写launc ...
- python socket 传输文件
推荐资料 https://www.cnblogs.com/xiaokang01/p/9865724.html socket传输文件 思路: # 先将报头转换成字符串(json.dumps), 再将字符 ...