1. 本周学习总结

    初学面向对象,会学习到很多碎片化的概念与知识。尝试学会使用思维导图将这些碎片化的概念、知识组织起来。请使用纸笔或者下面的工具画出本周学习到的知识点。

  2. 书面作业

    Q1.代码阅读

    public class Test1 {

    private int i = 1;//这行不能修改

    private static int j = 2;

    public static void main(String[] args) {

    geti();

    Test1.getj();

    }

    public static void geti() {

    System.out.println(i);

    }

    public static void getj() {

    System.out.println(j);

    }

}

以上代码可否编译通过?哪里会出错?为什么?尝试改正?

如果创建3个Test1对象,有内存中有几个i,几个j?请分析原因?

答:(1)不能通过编译,有两处错误,第一是Test1getj(),代码中并无次方法,第二是public static void geti()这个方法,因为i不是静态变量,系统会报 错(j的定义是private static int j = 2,是静态变量,所以public static void getj()可通过)

(2)第一个错误修改,可以建立先关方法private static void Test1getj(),第二个错误可以把public static void geti()改为public void geti()

(3)会有3个i,1个j,因为i不是静态变量,每个对象都有其i值,但j不同,j是静态变量,不属于任何一个独立的对象,所以j只有1个

Q2.构造函数有什么用?其编写格式是什么?如果一个类不写构造函数,它有构造函数吗?如果一个类中只有带参的构造函数,它有没有不带参数的默认构造函数?

答:如果定义类时,没有撰写任何构造函数,编译程序会自动加入一个无参数,内容为空的构造函数。所以如果类中有了构造参数,程序就不会加入默认的构造函数了。

Q3.使用java.lang.Math类的函数时,为什么不需要new?如果new Math()会产生什么错误?分析原因?

答:Math类本身不是静态的,但它的方法以及成员变量都是静态的,使用Math.方法名就可以,使用new Math()会报错。

Q4.什么是重载?什么是构造函数重载?在java.lang.Math类中举出1个函数重载的例子?怎么才能区分两个重载函数?

答:重载是指就是方法名相同,参数的个数或类型不同;构造函数重载是指只要参数的个数或类型不同,就可以在类中定义多个构造函数

void fun(int x) {……};void fun(double x) {……}

Q5.final修饰的变量不能改变,为什么如下代码可以正常运行?

final int[] NUMBS= {1,2,3,4,5};

NUMBS[2] = 1;

答:NUMBS这个对象是不能变得,但是它指向的内容是可以变的

Q6.阅读代码EmployeeTest.java,回答:

1.为什么其属性均为private?这样设计有什么好处?

2.为Employee类增加一个无参构造函数,调用其有参构造函数,设置name为雇员1, salary为3000, hireDay的年月日为2017年3月5日。(粘贴代码)

3.为Employee类再增加一个有参构造函数,参数只有name与salary,hideDay为当前日期。(粘贴代码)

(1)本代码创建了3个独立的对象,如果不使用pravate的话,其属性将会随输入值的不同而改变(外部操作),导致对象的属性发生错误,用private,只对起内部的改变而改变(内部操作),使得独立对象各自的属性不变

(2)

public Employee()

{

name="雇员1";

salary = 3000;

GregorianCalendar calendar = new GregorianCalendar(2017, 3, 5);

// GregorianCalendar uses 0 for January

hireDay = calendar.getTime();

}

(3)

public Employee(String name, double salary){

     Calendar Day=Calendar.getInstance();
Day.get(GregorianCalendar.YEAR);
Day.get(GregorianCalendar.MONTH);
Day.get(GregorianCalendar.DAY_OF_MONTH);

}

Q7.编写函数public static boolean isMondayToFriday()

功能:判断今天如果是周一到周五,直接输出如“上班时间”并返回true,否则输出“休息时间”。

提示:使用LocalDateTime, DayOfWeek

参考资料:

JAVA 8:健壮、易用的时间-日期API - ImportNew.pdf

Java8DateTimeTest.java

public static boolean isMondayToFriday(){

LocalDate date = LocalDate.now();

int day=LocalDateTime.getDayOfWeek().getValue();

if (day>=1&&day<=5){

system.out.Println("上班时间");

return true;

}

else{

system.out.Println("休息时间");

retun false;

}

}

201521123015 《Java程序设计》第3周学习总结的更多相关文章

  1. 20145213《Java程序设计》第九周学习总结

    20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...

  2. 20145213《Java程序设计》第二周学习总结

    20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...

  3. 20145213《Java程序设计》第一周学习总结

    20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...

  4. 21045308刘昊阳 《Java程序设计》第九周学习总结

    21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...

  5. 20145330孙文馨 《Java程序设计》第一周学习总结

    20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...

  6. 20145337 《Java程序设计》第九周学习总结

    20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...

  7. 20145337 《Java程序设计》第二周学习总结

    20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...

  8. 20145218《Java程序设计》第一周学习总结

    20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...

  9. 《Java程序设计》第九周学习总结

    20145224 <Java程序设计>第九周学习总结 第十六章 整合数据库 JDBC入门 ·数据库本身是个独立运行的应用程序 ·撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的 ...

  10. 《Java程序设计》第二周学习总结

    20145224陈颢文<Java程序设计>第二周学习总结 教材学习内容总结 一.类型.变量与运算符 1.类型 整数: 可细分为为short整数(占2字节),int整数(占4字节),long ...

随机推荐

  1. Java中常见数据结构List之ArrayList

    这里主要包含ArrayList和LinkedList, 然后再添加一个:CopyOnWriteArrayList 关于Java中的集合内容, 感觉都已经被写烂了, 我这里主要是做个复习, 再从扒下源代 ...

  2. Go 程序的性能优化及 pprof 的使用

    Go 程序的性能优化及 pprof 的使用 程序的性能优化无非就是对程序占用资源的优化.对于服务器而言,最重要的两项资源莫过于 CPU 和内存.性能优化,就是在对于不影响程序数据处理能力的情况下,我们 ...

  3. Ransom Note(383)

    题目:Given an arbitrary ransom note string and another string containing letters from all the magazine ...

  4. Redis的部署及使用

    Redis Memcached与Redis的对比 Memcached: 优点: 1. 纯set get性能好 2. 开发都会用,易用简单 4. 可用于存放session 缺点: 1. 不支持持久化 2 ...

  5. css3文字与字体样式

    css3使用服务器端字体: <!DOCTYPE html> <html lang="en"> <head> <meta charset=& ...

  6. javascript 实现字符串反转的两种方法

    第一种方法:利用数组方法 //先split将字串变成单字数组,然后reverse()反转,然后将数组拼接回字串 var str = "abcdef"; str.split(&quo ...

  7. spring-aop的简单实例注解版

    项目结构如图,基本的spring的配置就不在赘述 1.首先编写自定义的切面类 package org.wu.test; import org.aspectj.lang.annotation.After ...

  8. Java温故而知新-空心菱形

    空心菱形 今天做题练手,题目是空心菱形,一开始没什么思路,去网上找了找,发现很难找到讲的通透的,自己现在独立做出来了,记录一下,以备后用. * * * * * * * * * * * * * * * ...

  9. SoapUI 之 JDBC请求

    之前有试过Jmeter的JDBC请求,挺方便的,今天下午闲来没事,看见soapUI里面也有一个JDBC请求,便也来试试. 首先添加一个JDBC请求,然后直接把Jmeter的一些链接参数复制过去,一直报 ...

  10. redis集群搭建及注意事项

    上一篇:redis的安装及注意事项 这里,在一个Linux虚拟机上搭建6个节点的redis伪集群,思路很简单,一台虚拟机上开启6个redis实例,每个redis实例有自己的端口.这样的话,相当于模拟出 ...