网站开发的需求分析书,适合中小企业的管理软件,阿里云可以建设网站吗,深圳市建筑工程《Java技术》第三次作业 #xff08;一#xff09;学习总结 1.书中对面向对象封装性的定义为#xff1a;指把对象的属性和行为看成一个密不可分的整体#xff0c;把不需要让外界知道的信息隐蔽起来。简单来说#xff0c;就是定义的一些对象#xff0c;只有在本类中才可以…《Java技术》第三次作业 一学习总结 1.书中对面向对象封装性的定义为指把对象的属性和行为看成一个密不可分的整体把不需要让外界知道的信息隐蔽起来。简单来说就是定义的一些对象只有在本类中才可以使用在外界是不可以访问和调用的。 Java中通过使用private和public声明来区别私有和公由例如 class setting{private int a1;public int b1;
}
public class Test {public static void main(String[] args){setting get;int c,d;cget.a;dget.b;}
} 这段代码是不能通过编译的会提示“a不可视”即a不能被调用 2.阅读下面程序 1如代码 class A{private int secret 5;
}
public class Test{public static void main(String args[]){A a new A();System.out.println(a.secret);}
} 此段代码不能通过编译提示“A.secret不可视”因为封装性的缘故在Test类的main()方法中是不能调用.secret的。 2如代码 public class Test{int x 50;static int y 200;public static void method(){System.out.println(xy);}public static void main(String args[]){Test.method();}
} 此段代码不能通过编译因为x为非静态变量不能对非静态变量进行静态引用。 3.修改后的代码如下 class Book{static int bookId;String bookName;double price;// 声明静态 变量static int count;//定义静态代码块对静态变量初始化static {count0;bookId1000;}//构造方法public Book(){}public Book(String bookName,double price) {this.bookNamebookName;this.priceprice;count;} public int getBookId(){return bookId;}public String getBookName() {return bookName;}public void setBookName(String bookName) {this.bookName bookName;}public double getPrice() {return price;}public void setPrice(double price) {this.price price;}//定义方法求图书总册数public static int totalBook(){return count;}//重写toString方法public String toString(){return 书名为getBookName()图书编号为getBookId()价格为getPrice();}
}
public class Test{public static void main(String args[]){ Book[] books {new Book(c语言程序设计,29.3),new Book(数据库原理,30),new Book(Java学习笔记,68)};System.out.println(图书总数为 Book.totalBook()); for(Book book:books){System.out.println(book.toString());}}
} 4. 单例设计模式只能有自己创建的唯一一个实例并且必须给所有其他对象提供这一实例。 class Sun{private static Sun instance new Sun() ;private Sun(){}public static Sun getInstance(){return instance ;}
} 5.如下代码 public class Test {String str new String(你好 );char[] ch { w,o,l,l,d };public static void main(String args[]) {Test test new Test();test.change(test.str, test.ch);System.out.print(test.str);System.out.print(test.ch);}public void change(String str, char ch[]) {str hello;ch[0] W;}
} 运行结果为“你好 Wolld” 为什么不为“hello Wolld”呢原因很简单通过调用传参传递的为str字符串和ch[]字符数组的地址所以修改字符数组即为修改内容而修改的字符串内容可以理解为是在修改形参并不影响实参的值因为传递的是内容而不是地址。 6.使用构造方法后我觉得很多的程序变的更加清晰即使出错也可以很快地确认错误的位置十分方便。还有就是感觉前边的知识不能忘啊例如比较比较double数值是十分重要的一个点用到了很多次。 二实验总结 1.按照下列要求完成类的设计 1设计一个日期类用于记录年、月、日提供对日期处理的常用方法(日期输出格式xxxx-xx-xx。 2设计一个职工类该职工类至少具有下面的属性职工号姓名性别生日工作部门参加工作时间设计相应的方法。 3设计一个部门类包括下列属性部门编号部门名称经理设计相应方法。 4设计一个测试类采用对象数组模拟一个拥有两个部门10个职工的单位实现对相关信息的查询功能。 程序设计思路 (1)日期类用set和get方法记录年月日即可 (2)职工类用set和get方法记录职工号、姓名、性别并用Date日期类定义生日和工作时间用Department部门类定义所属部门 (3)部门类用set和get方法记录部门编号、部门名称并用Employee职工类定义经理 (4)测试类输入数据并输出。2.设计一个计算工具类要求 1为用户提供几个常见的几何体面积和体积的算法如球的体积和表面积圆柱体的体积和表面积圆锥体的体积和表面积可以学习使用static关键字 2设计一个测试类给出几个不同的圆柱体圆锥体球体的尺寸用计算工具类分别求它们体积的累加和与表面积的累加和。 3设计一个测试类随机产生球圆柱、圆锥体的尺寸模拟考试要求用户回答它们的体积和面积并判断用户的回答是否正确 程序设计思路 (1)输入类将半径、高、母线长等参数输入 (2)计算类定义π的值为3.14调用输入类中的参数对所有公式进行计算 (3)测试类分两个部分。第一个部分输入参数存入输入类调用计算类中的公式进行计算第二个部分使用Random类生成随机数即对用户出题让用户输入答案判断答案是否正确。实验问题分析 问题在对用户出题时结果无法判断。 原因精度不同。 解决方案将两个值四舍五入后判断内容是否一致就可以进行判断了。3.用面向对象编程思想完成评分系统 程序设计思路 (1)定义各选手的信息变量和分数数组变量并写出接口方便用Arrays.sort()进行排序 (2)输入各选手的信息在排序后进行输出。4.用面向对象编程思想编写猜拳游戏 程序设计思路 (1)电脑类定义电脑的名字和分数使用随机数生成电脑的出拳 (2)选手类与电脑类定义相同只不过在出拳的方法不再使用随机数生成 (3)游戏类分别生成电脑类变量和选手类变量输出规则并决定是否开始使用循环实现多次游戏并定义变量记录游戏次数每次游戏结束调用判断方法判断游戏结果并询问是否继续 (4)调用游戏类中的初始化和开始游戏的方法。三代码托管 码云commit历史截图转载于:https://www.cnblogs.com/masart/p/6674599.html