Java之面向对象例子(一)
定义一个人类,给这个类定义一个从身份证获取生日的方法,输入身份证,获取出生年月日
//主方法
package com.hanqi.maya.model;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {//主方法 main方法 main函数
Person per=new Person(); //实例化一个人
per.name="Bom";
System.out.println("请输入身份证来获取生日");
Scanner scanner=new Scanner(System.in);
String str=scanner.nextLine();
per.showBir(str); }
}
//类方法
package com.hanqi.maya.model;
import java.util.Date;
import java.util.Scanner;
import java.util.Scanner;
//定义一个类
public class Person {
//定义成员变量 即 属性
public String name;
public String sex;
public int age;
public Date bir;
public String sfz;
//定义类方法
public String showBir(String sfz){
System.out.println("用户的生日是:"+sfz.substring(6,14));
return sfz;
} }
注意:
局部变量使用时必须赋初始值
类里的成员变量Java自动给赋值 int型初始值0 bollean型初始值false String型初始值null Date型初始值null
写一个简单的计算器
//主方法
package com.hanqi.maya.model;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {//主方法 main方法 main函数 System.out.println("请输入第1个数字");
Scanner scanner=new Scanner(System.in);
String str=scanner.nextLine();
double a=Double.parseDouble(str);
System.out.println("请输入运算符");
Scanner scanner2=new Scanner(System.in);
String str2=scanner.nextLine();
System.out.println("请输入第2个数字");
Scanner scanner1=new Scanner(System.in);
String str1=scanner1.nextLine();
double b=Double.parseDouble(str1);
Calc sum=new Calc();
sum.jisuan(a,b, str2);
}
}
package com.hanqi.maya.model;
import java.util.Scanner;
//计算机类
public class Calc {
//+-*/简单运算方法
public double jisuan (double a,double b,String f){ if(f.equals("+")){
System.out.println("a"+f+"b"+"="+(a+b));
return a+b;
}else if(f.equals("-")){
System.out.println("a"+f+"b"+"="+(a-b));
return a-b;
}else if(f.equals("/")){
System.out.println("a"+f+"b"+"="+(a/b));
return a/b;
}else if(f.equals("*")){
System.out.println("a"+f+"b"+"="+(a*b));
return a*b;
}
return 0;
}
}
定义一个车类,定义一个显示车类信息的方法,一个根据油耗和里程计算剩余油量的方法
//主方法
package com.hanqi.maya.model;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {//主方法 main方法 main函数Car car=new Car("奥T","AA",15,10,30);
car.show();
car.run(25);
car.show(); }
}
package com.hanqi.maya.model;
public class Car {
public String pinp;
public String chex;
public double price;
public int yh;
public double lc;
public int yxrj;
public int syyl; public Car(){//定义构造函数 }
public Car(String pinp1,String chex1,double price1,int yh1,int yxrj1){
pinp=pinp1;
chex=chex1;
price=price1;
yh=yh1;
lc=0;
yxrj=yxrj1;
syyl=yxrj1;
}
//显示信息的方法
public void show(){
System.out.println("品牌:"+pinp);
System.out.println("车型:"+chex);
System.out.println("价格:"+price);
System.out.println("油耗:"+yh);
System.out.println("里程数"+lc);
System.out.println("油箱容积:"+yxrj);
System.out.println("剩余油量:"+syyl+"L");
System.out.println();
}
//计算剩余油量的方法
public void run(double gongls){
double d=(gongls/100)*yh;
syyl=(int) (syyl-d);
System.out.println("行驶"+d+"公里之后");
System.out.println();
}
}
Java之面向对象例子(一)的更多相关文章
- Java之面向对象例子(三) 多态,重写,重载,equals()方法和toString()方法的重写
重写(继承关系) 子类得成员方法和父类的成员方法,方法名,参数类型,参数个数完全相同,这就是子类的方法重写了父类的方法. 重载 在一个类里有两个方法,方法名是完全一样的,参数类型或参数个数不同. 例子 ...
- Java之面向对象例子(二)
定义一个Book类,在定义一个JavaBook类继承他 //book类 package com.hanqi.maya.model; public class Book { public String ...
- JAVA的面向对象编程--------课堂笔记
面向对象主要针对面向过程. 面向过程的基本单元是函数. 什么是对象:EVERYTHING IS OBJECT(万物皆对象) 所有的事物都有两个方面: 有什么(属性):用来描述对象. 能够做什么 ...
- java学习面向对象之异常之一
一.异常的概述: 什么是异常?在我们编写java程序的时候,会出现一些问题,比如内存溢出啊或者数组索引超出最大索引啊,这些编程当中出现的这些个问题就是异常.但是异常也分为可以处理的和不可以处理的.比如 ...
- Java基础-面向对象第一特性之封装(Encapsulation)
Java基础-面向对象第一特性之封装(Encapsulation) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.理解什么是面向过程和面向对象 面向过程与面向对象都是我们编程中 ...
- java中面向对象的三大特性小结
java中面向对象的三大特性:封装.继承.多态 封装 把抽象的数据和对数据的操作封装在一起,隐藏变量的实现细节.数据被保护在内部,程序的其他部分只有通过被授权的操作(成员方法)才能对数据进行访问. 1 ...
- Java入门 - 面向对象 - 05.封装
原文地址:http://www.work100.net/training/java-encapsulation.html 更多教程:光束云 - 免费课程 封装 序号 文内章节 视频 1 概述 2 封装 ...
- java的面向对象
Java是1995年诞生.前身oak,后来改名为java. 面向对象的编程思想:对象是万事万物. 对象是由两部分组成的:属性和方法 1:属性是对象的静态特性(名词) 2:方法是对象的动态特性(动词) ...
- Java正则表达式匹配例子
Java正则表达式匹配例子 package com.ibm.test; import java.util.regex.Matcher; import java.util.regex.Pattern; ...
随机推荐
- mongoose populate
mongoose具备关系数据库一样的关联查询,通过在schema模型中设置ref属性,然后在查询时使用populate关键字,可以达到关联查询的目的. 以下内容参考了mongoose官方文档http: ...
- 地理位置 API
js获取地理位置的接口navigator.geolocation geolocation对象有三个方法 1.getCurrentPosition 2.watchPosition 3.clearWatc ...
- android Activity Application Context 的区别
用了这么久的Context,对于Context究竟是个什么玩意一直不是很明白.看了网上十几篇文章的介绍 加上自己的理解总结一下.(自己想法,不对勿喷,不想照搬网上一些文字说法来糊弄自己,自己理解的就这 ...
- elasticsearch系列(五)score
概述 score在ES中有着很重要的作用,有了它才有了rank,是验证文档相关性的关键数据,score越大代表匹配到的文档相关性越大 官方解释 查询的时候可以用explain来展示score的计算过程 ...
- SDWebImage源码阅读-第一篇
一 题外话 之前写过一篇最新版SDWebImage的使用,也简单的介绍了一下原理.这两天正梳理自己的知识网络,觉得有必要再阅读一下源码,一是看具体实现,二是学习一下优秀开源代码的代码风格,比如接口设计 ...
- sock
头和尾基本用来做校验, 不是拿来做边界的. 头+类型+长度+数据+尾, 这种结构就可以. 拆包就是: 检验头, 然后拆出类型+长度, 然后根据长度拆数据, 然后检验尾巴.
- 可视化之Earth NullSchool
上两篇我们分别介绍了<Berkeley Earth>和<AQICN>两个网站,今天来看一下Earth NullSchool. 这个网站的特色是风向图,之前有一篇可视化之风向图, ...
- colinux
Colinux是什么?2004年,由一名21岁的以色列学生与几名日本的自由程序员合作开发出了一个名为“Cooperative Linux”即“CoLinux”的Linux程序,该程 序可使Linux的 ...
- 简单介绍phpcms以及phpcms如何安装?
一.先大体介绍一下phpcms,及存放位置 1.将phpcms放在www目录下的phpcms,并解压 其中,readme 没什么用,重要的是install_package; 2.打开install_p ...
- JavaScript面向对象轻松入门之封装(demo by ES5、ES6、TypeScript)
本章默认大家已经看过作者的前一篇文章 <JavaScript面向对象轻松入门之抽象> 为什么要封装? 封装(Encapsulation)就是把对象的内部属性和方法隐藏起来,外部代码访问该对 ...