类、对象、封装
等面向对象的思想
对象
类
java
掌握的还不够深刻,知识框架体系还不完善,望见谅.....git
git地址编程
public 类名() { .............. }
public Person(){ System.out.println("This is constructor"); System.out.printf("%s,%d,%s,%d%n", name,age,gender,id); }
public Person(String name , int age , boolean gender ){ this.name = name; this.age = age; this.gender = gender; }
完成对name
age
gender
的赋值String
类的源代码,找出3个看得懂的String类的构造函数,并使用本身的话描述这3个构造函数的区别。java.lang.Math
类的方法时,为何不须要new出一个Math对象,而后调用该对象上相应的方法?new Math()
编程结果提示内容不可见;Math()
是一种顶级类(在其它类的外面声明一个类时,Java就认为该类是一个顶级类),无需再new
建立重载即函数(或方法)有着一样的函数名称,但自变量或者参数不一样;数组
构造函数重载即保证每一个构造函数的参数类型或者参数个数不一样那么就能够在一个类中定义多个函数;安全
区分两个重载:在于相应参数的数量、参数的顺序和参数的类型的不一样所在数据结构
java.lang.Math
类中举出1个方法重载的例子?final int[] NUMBS= {1,2,3,4,5}; NUMBS[2] = 1;
框架
public static boolean isMondayToFriday()
功能:判断今天若是是周一到周五,返回true,返回false。main函数中调用该函数,若是为true则输出“工做日+姓名学号”,不然输出"休息+姓名学号"。
截图:关键代码。
提示:使用LocalDateTime, DayOfWeek类函数
封装
是什么意思?有何好处?Rectangle
,private
属性:int width,int length
Circle
,private
属性:int radius
public int getPerimeter()
以及面积public int getArea()
的方法则是为用户可见的;private
数据私有化,成员变量或成员方法只能在本类中被使用,在子类或其余包的类都是不可见的;public
数据公开化,成员变量或成员方法用public修饰在任何地方都是可见的;default
数据默认化,在成员变量或成员方法没有声明的状况下,Java会自动给这些没有声明权限的成员一个默认的权限default,这个权限则不能实现跨包,该成员变量或成员方法只能在本类或该类的子类调用;protected
数据受保护,若是在成员变量或成员方法用protected修饰的,那么该成员变量或成员方法在同包的类或子类是可见的,若是要实现跨包,那么在子类才可见。关键字的详细内容参考百度百科工具
找一个水平相近的同窗完成1-2题实验题。开始编程前,可先对内容进行讨论。
写出体验报告,包括如下内容:1.对方姓名。2.所完成的题目。3.感想。4.照片学习
结对对象:普天
完成题目:PTA7-3(形状)
感想:在老师上完实验课的基础上,首先咱们统一步调,先实现类的建立,再而无参构造函数和有参构造函数的建立,经过快捷键shift+alt+s
使每一个属性生成setter、getter方法以及覆盖toString函数的生成;接下来就是主函数的编写(main),咱们经过商讨决定建立字符串数组将周长和、面积和放入其中,进而实现字符串向Integer类的转化,最后就是实现整合,按正确格式输出。本次结对编程双方没有太多的想法歧义,大致的框架基本统一,在main函数中的语句使用上仍是有各自的想法,但已经逐渐向“1+1>2"发展,这是一个很好的势头。
须要有两张图(1. 排名图。2.PTA提交列表图)
须要将每周的代码统计状况融合到一张表中,可以使用最新版的代码统计工具的-history参数,详细用法见项目wiki地址。
周次 | 总代码量 | 新增代码量 | 总文件数 | 新增文件数 | |||||
---|---|---|---|---|---|---|---|---|---|
第一周 | 189 | 189 | 10 | 10 | |||||
第二周 | 304 | 304 | 9 | 9 | |||||
第三周 | 557 | 557 | 10 | 10 |