![](https://img-blog.csdnimg.cn/a280d17a310b4ffbb3897073d07e864c.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
java面向对象
java面向对象
郭守军
爱学习,爱生活
展开
-
java-面向对象-习题8(猜拳游戏)
面向对象-习题8(猜拳游戏)题目请编写一个猜拳的游戏有个人 Tom,设计他的成员变量. 成员方法, 可以电脑猜拳. 电脑每次都会随机生成 0, 1, 20 表示 石头 1 表示剪刀 2 表示 布并要可以显示 Tom的输赢次数(清单), 假定 玩三次.代码import java.util.Random; import java.util.Sc原创 2022-01-15 23:29:15 · 506 阅读 · 1 评论 -
java-面向对象-习题7(音乐播放信息)
面向对象-习题7(音乐播放信息)写一个方法输出播放音乐的信息public class Homework { public static void main(String[] args) { Music music = new Music("半岛铁盒",520); music.play(); music.getInfo(); System.out.println(music.getInfo()); }}class Music { String name; int times;原创 2022-01-15 22:02:17 · 175 阅读 · 0 评论 -
java-面向对象-习题6(定义四个方法实现求和、差、乘、商)
面向对象-习题6(定义四个方法实现求和、差、乘、商)编程创建一个Cale计算类,在其中定义2个变量表示两个操作数,定义四个方法实现求和、差、乘、商(要求除数为0的话,要提示) 并创建两个对象,分别测试import java.util.Scanner;public class Homework{ public static void main(String[] args) { Scanner myScanner = new Scanner(System.in); System.out.pri原创 2022-01-15 21:40:07 · 1769 阅读 · 0 评论 -
java-面向对象-习题5(输入半径计算周长面积)
面向对象-习题5(输入半径计算周长面积)定义一个圆类Circle, 定义属性:半径,提供显示圆周长功能的方法, 提供显示圆面积的方法import java.util.Scanner;public class Homework{ public static void main(String[] args) { Scanner myScanner = new Scanner(System.in); System.out.println("请输入半径R:"); double r= myScan原创 2022-01-15 21:20:08 · 1377 阅读 · 0 评论 -
java-面向对象-习题4(数组复制)
面向对象-习题4(数组复制)public class Homework { public static void main(String[] args) { int oldArr[] = {1,2,5,4,8}; A03 a3 = new A03(); int newArr[] = a3.copyArr(oldArr); System.out.println("======返回的newArr情况======"); for ( int i=0 ;i<newArr.length ;原创 2022-01-15 20:59:19 · 114 阅读 · 0 评论 -
java-面向对象-习题3(书本价格更新)
面向对象-习题3(书本价格更新)题目编写类Book, 定义方法updatePrice,实现更改某本书的价格,具体:如果价格>150,则更改为150,如果价格>100,更改为100,否则不变分析类名 Book属性 price, name方法名 updatePrice形参 ()返回值 void提供一个构造器代码import java.util.Scanner;public class Homework { public static void main(String原创 2022-01-14 23:54:46 · 335 阅读 · 0 评论 -
java-面向对象-习题2(在字符串数组中查找特定字符串的序号)
习题2(在字符串数组中查找特定字符串的序号)import java.util.Scanner;public class Homework { public static void main(String[] args) { Scanner myScanner = new Scanner(System.in); A02 a2 = new A02(); String arr[] = {"China","guo","shou","jun"}; System.out.println("请输入原创 2022-01-14 23:33:53 · 352 阅读 · 0 评论 -
java-面向对象-习题1(double数组最大值的查找)
习题1(double数组最大值的查找)定义方法max,实现求某个double数组的最大值,并返回输入数组,并返回最大值import java.util.Scanner;public class Homework { public static void main(String[] args) { //作业一 A01 a1 =new A01(); Scanner myScanner = new Scanner(System.in); double arr[] = new doub原创 2022-01-14 23:14:31 · 711 阅读 · 0 评论 -
java-面向对象-关键字this详解
关键字this详解public class This01 { //编写一个main方法 public static void main(String[] args) { Dog dog1 = new Dog("大壮", 3); System.out.println("dog1的hashcode=" + dog1.hashCode()); //dog1调用了 info()方法 dog1.info(); System.out.println("============");原创 2022-01-14 22:30:41 · 108 阅读 · 0 评论 -
java-面向对象-构造器
面向对象-构造器public class ConstructorDetail { //编写一个main方法 public static void main(String[] args) { Person p1 = new Person("king", 40);//第1个构造器 Person p2 = new Person("tom");//第2个构造器 Dog dog1 = new Dog();//使用的是默认的无参构造器 }}class Dog { //如果程序员没有定原创 2022-01-14 20:45:00 · 73 阅读 · 0 评论 -
java-面向对象-作用域
面向对象-作用域public class VarScope { //编写一个main方法 public static void main(String[] args) { }}class Cat { //全局变量:也就是属性,作用域为整个类体 Cat类:cry eat 等方法使用属性 //属性在定义时,可以直接赋值 int age = 10; //指定的值是 10 //全局变量(属性)可以不赋值,直接使用,因为有默认值, double weight; //默认值是0.0原创 2022-01-14 17:51:16 · 111 阅读 · 0 评论 -
java-面向对象-方法重载(练习)
方法重载public class OverLoadExercise { //编写一个main方法 public static void main(String[] args) { //在主类的main ()方法中分别用参数区别调用三个方法 Methods method = new Methods(); method.m(10);//100 method.m(10, 20);//200 method.m("你好啊 hello");//字符串信息 //测试 Syste原创 2022-01-13 23:22:07 · 309 阅读 · 0 评论 -
java-面向对象-方法重载
面向对象-重载public class OverLoad01 { //编写一个main方法 public static void main(String[] args) { MyCalculator mc = new MyCalculator(); System.out.println(mc.calculate(1, 2)); System.out.println(mc.calculate(1.1, 2)); System.out.println(mc.calculate(原创 2022-01-13 22:16:42 · 157 阅读 · 0 评论 -
java-面向对象-递归-汉诺塔
面向对象-递归-汉诺塔public class HanoiTower { //编写一个main方法 public static void main(String[] args) { Tower tower = new Tower(); tower.move(64, 'A', 'B', 'C'); }}class Tower { //方法 //num 表示要移动的个数, a, b, c 分别表示A塔,B 塔, C 塔 public void move(int num ,原创 2022-01-13 20:47:44 · 118 阅读 · 0 评论 -
java-面向对象-递归-老鼠出迷宫
递归-老鼠出迷宫public class MiGong { public static void main(String[] args) { //思路 //1. 先创建迷宫,用二维数组表示 int[][] map = new int[8][7]; //2. 先规定 map 数组的元素值: 0 表示可以走 1 表示障碍物 int map[][] = new int[8][7]; //3.将最上面的一行和最下面的一行设置成1 for ( int i=0 ; i < 7原创 2022-01-13 20:35:41 · 131 阅读 · 0 评论 -
java-面向对象-递归-猴子吃桃问题
面向对象-递归-猴子吃桃问题题目猴子吃桃子问题:有一堆桃子,猴子第一天吃了其中的一半,并再多吃了一个!以后每天猴子都吃其中的一半,然后再多吃一个。当到第10天时,想再吃时(即还没吃),发现只有1个桃子了。问题:输入n 第n天的时候共多少个桃子?思路分析思路分析 逆推1. day = 10 时 有 1个桃子2. day = 9 时 有 (day10 + 1) * 2 = 43. day = 8 时 有 (day9 + 1) * 2 = 104. 规律就是 前一天的桃子 = (后一天原创 2022-01-12 22:44:14 · 569 阅读 · 1 评论 -
java-面向对象-递归-斐波那契数
面向对象-递归-斐波那契数题目已知斐波那契数列为1,1,2,3,5,8,13…输入整数n,使用递归的方式求出第n个斐波那契数是多少思路当n = 1 斐波那契数 是1当n = 2 斐波那契数 是1当n >= 3 斐波那契数 是前两个数的和这里就是一个递归的思路代码import java.util.Scanner;public class Recursion { public static void main(String[] args) { Scanner myScan原创 2022-01-12 22:22:50 · 161 阅读 · 0 评论 -
java-面向对象-递归-求某个数的阶乘
面向对象-递归-求某个数的阶乘题目输入某个数(num)用递归的方法求它的阶乘import java.util.Scanner;public class Recursion { public static void main(String[] args) { Scanner myScanner = new Scanner(System.in); T t1 = new T(); System.out.println("请输入num:"); int num = myScanner.nex原创 2022-01-12 21:51:32 · 391 阅读 · 0 评论 -
java-面向对象-递归机制
面向对象-递归机制代码public class Recursion { public static void main(String[] args) { T t1 = new T(); t1.test(4); }}class T { public void test(int n){ if (n>2) { test(n-1); } System.out.println("n="+n); } }内存分析图结果...原创 2022-01-12 21:24:07 · 143 阅读 · 0 评论 -
java-面向对象-克隆对象
面向对象-克隆对象题目编写一个方法copyPerson,可以复制一个Person对象,返回复制的对象。克隆对象,注意要求得到新对象和原来的对象是两个独立的对象,只是他们的属性相同思路编写方法的思路1. 方法的返回类型 Person2. 方法的名字 copyPerson3. 方法的形参 (Person p)4. 方法体, 创建一个新对象,并复制属性,返回即可代码public class MethodExercise02 { //编写一个main方法 public static voi原创 2022-01-12 20:28:57 · 175 阅读 · 0 评论 -
java-面向对象-方法练习-判断奇偶数
面向对象-方法练习-判断奇偶数编写类AA ,有一个方法:判断一个数是奇数odd还是偶数, 返回boolean思路1. 方法的返回类型 boolean2. 方法的名字 isOdd3. 方法的形参 (int num)4. 方法体 , 判断public class MethodExercise01 { //编写一个main方法 public static void main(String[] args) { AA judge = new AA(); if (judge.isOdd(8原创 2022-01-11 21:23:19 · 837 阅读 · 0 评论 -
java-面向对象-成员方法细节
面向对象-成员方法细节原创 2022-01-11 21:02:03 · 161 阅读 · 0 评论 -
java-面向对象-二维数组调用方法输出
面向对象-二维数组调用方法输出传统方法public class Method02 { //编写一个main方法 public static void main(String[] args) { //请遍历一个数组 , 输出数组的各个元素值 int map[][] = {{0,0,1},{1,1,1},{1,1,3}}; //使用方法完成输出, 创建MyTools对象 //遍历map数组 //传统的解决方式就是直接遍历 for(int i = 0; i <原创 2022-01-11 20:18:02 · 2034 阅读 · 0 评论 -
java-面向对象-方法调用机制
方法调用机制原创 2022-01-11 19:27:28 · 112 阅读 · 0 评论 -
java-面向对象-成员方法
面向对象-成员方法import java.util.Scanner;public class Method01 { //编写一个main方法 public static void main(String[] args) { // 方法使用 // 1.方法写好后,不去调用的话,不会输出不起作用 // 2.先创建一个对象,然后调用方法即可 Person p1 = new Person(); p1.speak();//调用方法,输出“我是一个好人” p1.cal01();//调用原创 2022-01-11 19:07:49 · 111 阅读 · 0 评论 -
java-面向对象-创建方法
面向对象-创建方法要点方法要求:添加speak成员方法,输出“我是一个好人”解读:1.public表示方法是公开的2.void表示方法没有返回值3.speak() speak是方法名,()是形参列表,4.{}叫方法体,可以写要执行的代码段方法使用1.方法写好后,不去调用的话,不会输出不起作用2.先创建一个对象,然后调用方法即可代码public class Method01 { //编写一个main方法 public static void main(String[] arg原创 2022-01-11 18:30:13 · 180 阅读 · 0 评论 -
java-面向对象-对象实例化2
面向对象-对象实例化2代码public class Object01 { public static void main(String[] args) { Person a = new Person(); a.age = 10; a.name = "小明"; Person b ; b=a; System.out.println(b.name); b.age = 200; b = null; System.out.println(a.age); System原创 2022-01-11 18:13:18 · 173 阅读 · 0 评论 -
java-面向对象-对象实例化
面向对象-对象实例化题目张老太养了两只猫猫:一只名字叫小白,今年3岁,白色。还有一只叫小花,今年100岁,花色。请编写一个程序,当用户输入小猫的名字时,就显示该猫的名字,年龄,颜色。如果用户输入的小猫名错误,则显示 张老太没有这只猫猫。代码单独变量来解决public class Object01 { //编写一个main方法 public static void main(String[] args) { /* 张老太养了两只猫猫:一只名字叫小白,今年3岁,白色。 还原创 2022-01-11 16:10:38 · 211 阅读 · 0 评论 -
java-面向对象-类与属性的内存分配
面向对象-类与属性的内存分配代码public class Object01 { public static void main(String[] args) { //对象的属性默认值,遵守数组的规则 Person p1 = new Person(); p1.age = 10; p1.name = "小明"; Person p2 = p1;//把p1赋给p2,让p2指向p1 System.out.println(p2.age); }}内存分配图...原创 2022-01-11 15:49:19 · 227 阅读 · 0 评论 -
java-面向对象-属性默认值
面向对象-属性默认值对象的属性默认值,遵守数组的规则int 0 , short 0 , long 0 , float 0.0 ,double 0.0 ,char \u000,boolean false;public class Object01 { public static void main(String[] args) { //对象的属性默认值,遵守数组的规则 Person p1 = new Person(); System.out.println("输出当前这个人的信息:")原创 2022-01-11 15:28:42 · 2595 阅读 · 0 评论 -
java-面向对象-创建对象实例化
创建对象实例化题目张老太养了两只猫猫:一只名字叫小白,今年3岁,白色。还有一只叫小花,今年100岁,花色。请编写一个程序,当用户输入小猫的名字时,就显示该猫的名字,年龄,颜色。如果用户输入的小猫名错误,则显示 张老太没有这只猫猫。思路单独变量来解决 => 不利于数据的管理(你把一只猫的信息拆解)使用OOP面向对象解决实例化一只猫[创建一只猫对象]1. new Cat() 创建一只猫(猫对象)2. Cat cat1 = new Cat(); 把创建的猫赋给 cat13. cat1原创 2022-01-10 21:07:01 · 608 阅读 · 0 评论