how2j学习 |
您所在的位置:网站首页 › ledendary超神 › how2j学习 |
第一题:面向对象_类和对象 1. 学习任务: 2. 完成截图: 3. 代码: 12345678910111213141516171819202122232425262728293031323334package how2j_s1_base.f1_face_object; /** * 设计出物品这种类 * 类名:Item * 物品有如下属性: * 名字 name 类型是字符串String * 价格 price 类型是整型 int ** 创建(实例化)3件具体物品 * 名称 价格 * 血瓶 50 * 草鞋 300 * 长剑 350 */ public class Item { public String name; public int price; public static void main(String[] args) { Item bloodBottle = new Item(); // 创建血瓶对象 bloodBottle.name = "血瓶"; bloodBottle.price = 50; Item strawSandal = new Item(); // 创建草鞋对象 strawSandal.name = "草鞋"; strawSandal.price = 300; Item longSword = new Item(); // 创建长剑对象 longSword.name = "长剑"; longSword.price = 350; } } 4. 运行效果 无运行效果 第二题:面向对象_方法 1. 学习任务: 2. 完成截图: 3. 代码: 12345678910111213141516171819202122232425262728293031323334package how2j_s1_base.f1_face_object; /** * 为英雄类Hero设计几个新的方法: * 1. 超神 legendary(),无参数,无返回类型 * 2. 获取当前的血量 getHp(), 无参数,有float类型的返回值 * 3. 回血 recovery(float blood), 有参数 float类型参数 * blood表示本次恢复的血量,无返回类型 */ public class Hero { String name; // 名称 float hp; // 血量 float armor; // 护甲 int moveSpeed; // 移速 public static void main(String[] args) { } // 超神 void legendary() { System.out.println("超神啦!!!"); } // 获得血量 float getHp() { return hp; } // 恢复血量 void recover(float blood) { hp += blood; } } 4. 运行效果:无运行效果 第三题:变量_基本变量类型 1. 学习任务: 2. 完成截图: 3. 代码: 12345678910111213141516171819202122232425262728293031323334package how2j_s1_base.f2_variable; /** * 分别为如下值,找到合适的类型来定义 * 3.14 * 2.769343 * 365 * 12 * '吃' * false * "不可描述" * * 比如3.14就使用double * double a = 3.14; */ public class BasicVariableType { public static void main(String[] args) { float number1_1 = 3.14f; double number1_2 = 3.14; float number2_1 = 2.769343f; double number2_2 = 2.769343; { byte number4_1 = 12; // [-127 , 128) short number4_2 = 32767; // [-32768 , 32767] int number4_3 = 12; long number4_4 = 12L; } char str = '吃'; boolean bool = false; String string = "不可描述"; } } 4. 运行效果:无运行效果 第四题:变量_类型转换 1. 学习任务: 2. 完成截图: 3. 代码: 1234567891011121314151617181920package how2j_s1_base.f2_variable; public class TypeTransform { public static void main(String[] args) { byte b = 5; int i1 = 10; int i2 = 300; b = (byte) i1; //因为i1的值是在byte范围之内,所以即便进行强制转换 System.out.println(b); //最后得到的值,也是10 b = (byte) i2; //因为i2的值是在byte范围之外,所以就会按照byte的长度进行截取 //i2的值是300,其对应的二进制数是 100101100 System.out.println(b); //按照byte的长度8位进行截取后,其值为 00101100 即44 //查看一个整数对应的二进制的方法: System.out.println(Integer.toBinaryString(i2)); //其值为 100101100 } } 4. 运行效果:见控制台 第五题:变量_类型转换 1. 学习任务: 2. 完成截图: 3. 代码: 12345678910111213package how2j_s1_base.f2_variable; public class TypeTransform2 { public static void main(String[] args) { short a = 1; short b = 2; System.out.println("a+b的值为:" + (a + b)); short c = (short) (a + b); System.out.println("c的值为:" + c); int d = a + b; System.out.println("d的值为:" + d); } } 4. 运行效果:见控制台 第六题:变量_作用域 1. 学习任务: 2. 完成截图: 3. 代码: 12345678910111213141516171819package how2j.f2_variable; /** * 属性的作用域在方法中,参数的作用域也在方法中,如果属性和参数命名相同了的话? 那么到底取哪个值? */ public class Scope { int i = 1; //属性名是i public void method1(int i) { //参数也是i System.out.println(i); System.out.println("方法1内this.i值为:" + this.i); } public static void main(String[] args) { new Scope().method1(5); //结果打印出来是 1还是5? } } 4. 运行效果:见控制台 第七题:变量_Final 1. 学习任务: 2. 完成截图: 3. 代码: 12345678910111213package how2j.f2_variable; /** * 如果final修饰的是参数,能否在方法里给这个参数赋值? */ public class Final { public static void main(String[] args) { } public void method1 ( final int j){ j = 5; //这个能否执行? } } 4. 运行效果:见IDEA提示 |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |