oopDay03HomeWork
oopDay03Homework2、抽象类MotoVehicle
有参构造器:带有两个参数(String类型的汽车牌照和品牌)
方法getNo():返回String 类型的汽车牌照
方法getBrand():返回String 类型的品牌(宝马或者别克)
抽象方法calRent():需要一个int类型的参数表示被租赁的天数,用于计算租金
3、子类 Car:表示轿车
有参构造器:带有三个参数(String类型的汽车牌照、品牌、车型)
方法getType():返回String 类型的车型(如果是宝马,则为 550i)
方法setType():带有Stirng类型的参数,设置车型
重写方法calRent():根据品牌及车型,找到对应的日租金,乘以租用天数,计算租金
4、子类 Bus:表示客车
有参构造器:带有三个参数(String类型的汽车牌照和品牌、int类型的车座位数)
方法getSeatCount ():返回int 类型的车座位数
方法setSeatCount ():带有int 类型的参数,设置车座位数
重写方法calRent():根据座位数,找到对应的日租金,乘以租用天数,计 ...
oopDay03 final、static与抽象
final、static与抽象final 关键字final 修饰变量
final概述
在 Java中,final 可以修饰变量,修饰方法,修饰类
final 修饰的变量:可以初始化,不能在更改
final修饰的方法:不能在子类中重写
final 修饰的类:不能再被继承派生出子类了
final修饰局部变量
在方法中声明的变量称为局部变量
局部变量加final修饰以后,只能初始化一次,不能再次更改
可以声明的同时初始化
或者在构造函数中初始化
当final修饰引用类型变量时
变量的值就是引用对象的地址值,不能再次修改,但是可以改变该地址中的数据
```javapackage day03;
import java.util.Arrays;
/**
final修饰局部变量 */public class Demo01 { public static void main(String[] args) { //在方法中声明的变量就是局部变量 final int a; //声明一个final类 ...
oopDay02Homework
oopDay02Homework1 继承案例:正方形与长方形声明一个类 Square,表示正方形:
属性:int 类型的边长(width)
构造器:int 类型的参数,传入数值用于在造器中初始化 width
方法:名为area() ,计算并返回正方形的面积
声明一个类 Rectangle,表示长方形:
继承自 Square 类
属性:int 类型的长度(length)
构造器:两个 int类型的参数,用于在构造器中初始化 width 和 length
重写area()方法:计算并返回长方形的面积
编写一个测试类:
在main方法中分别创建 Square 类和 Rectangle 类的对象
调用这2个对象的 area()方法,将得到的面积输出到控制台
测试输出效果如下:
正方形面积 : 25
长方形面积: 40
/** * 正方形类 */public class Square { int width; public Square(int width) { this.width = width; } publi ...
oopDay02 对象数组、继承与访问控制
oopDay02 对象数组、继承与访问控制对象数组对象类型数组
什么是对象数组
在java中,对象数组是指由对象类型的元素组成的数组
与基本类型数组不同,对象数组可以存储对象的引用
对象数组的声明和初始化方式与基本类型数组类似
ClassName[] arrayName = new ClassName[arrayLength];
初始化对象数组
当创建一个对象数组时,数组中的每个元素会被初始化为对象的默认值
对象数组的默认值是null,表示数组中的元素尚未被赋予有效的对象引用
Student[] students = new Student[3]
静态初始化
在静态初始化中,可以直接为对象数组的每个元素赋值
在初始化时,可以提供具体的对象引用,将其分配给数组的每个位置
动态初始化
动态初始化:先创建一个指定长度的对象数组,然后逐个为每个元素对象的引用
[案例]使用对象数组管理
package day02;/** * 学生类 */public class Student { //提供四个属性 String ...
oopDay01Homework
oopDay01HomeWork/** * 定义一个手机类 * 包含属性为:品牌brand、型号style、价格price、硬盘大小diskSize(单位默认为GB) * 包含一个方法showInfo,以字符串形式返回当前手机的全部信息 * 包含一个无参构造器和一个带4个参数的构造器,用于简化对象的创建 */class Phone { String brand;//手机品牌 String style;//手机型号 double price;//手机价格 int diskSize;//硬盘大小 //无参构造方法 public Phone(){ } //带四个参数的构造器 public Phone(String brand,String style,double price,int diskSize){ this.brand = brand; this.style = style; this.price = price; this.disk ...
oopDay01面向对象编程-对象和类
面向对象编程-对象和类类和对象面向对象概述
分离变量来表示学生有很明显的缺点
/** * 分离变量来存储学生信息 */public class Demo01 { public static void main(String[] args) { //定义一个学生 String name1 = "Tom"; int age1 = 22; char gender1 = '男'; double score1 = 85.5; //定义第二名学生 String name2 = "Jerry"; int age2 = 21; char gender2 = '男'; double score2 = 86.5; //输出第一名的信息 System.out.println("姓名:"+name1); ...
Day04Homework
Day04HomeWorkpackage day04.homework;import java.util.Scanner;/** * 检查英文单词 * 请编写一个程序,接收用户在控制台输入的两个英文单词 * 判断其中一个单词的所有字符重新排列后,能否变为另一个单词 * */public class Test01 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); String s1 = scanner.next(); String s2 = scanner.next(); //先判断两个英文单词的长度是否相同 if (s1.length()!=s2.length()){ System.out.println(false); }else { isWord(s1,s2); ...
操作数组、软件开发管理
操作数组、软件开发管理操作数组数组的复制
System.arraycopy()方法用来进行数组的复制
public class ArrayCopyDemo01 { public static void main(String[] args) { //定义一个数组 int[] arr1 = {12,4,56,32,9,8}; int[] arr2 = new int[arr1.length]; //复制数据 /* for (int i = 0; i <arr2.length ; i++) { arr2[i] = arr1[i]; }*/ //src:源数组 srcPos:源数组中的起始位置 dest:目标数组 //destPos:目标数组中的起始位置 length:要复制的数组元素的数量 System.arraycopy(arr1,1,arr2,0,4); //查看复 ...
Day03Homework
/** * d打印九九乘法表 */public class Test01 { public static void main(String[] args) { for (int i =1; i <=9 ; i++) { for (int j =1; j <=i ; j++) { System.out.print(j+"×"+i+"="+i*j+" "); } System.out.println(); } }}/*输出结果1×1=1 1×2=2 2×2=4 1×3=3 2×3=6 3×3=9 1×4=4 2×4=8 3×4=12 4×4=16 1×5=5 2×5=10 3×5=15 4×5=20 5×5=25 1×6=6 2×6=12 3×6=18 4×6=24 5×6=30 6×6=36 1×7=7 ...
循环流程控制与数组
循环流程控制与数组循环流程控制for循环
for循环基础语法
for (表达式1;表达式2;表达式3){ 语句块(循环体)}//表达式1:初始值 表达式2:循环条件(boolean) 表达式3:循环增量(递增/递减)
使用场景(固定次数的循环)
/** * for循环 */public class ForDemo01 { public static void main(String[] args) { //完成打印十句Hello World for (int i = 0; i <5 ; i++) { System.out.println("Hello World"); } }}
/** * 计算从1累加到100的和 并输出累加的结果 */public class ForDemo02 { public static void main(String[] args) { ...