zoukankan      html  css  js  c++  java
  • java学习(三)

    学号 20189214 《Java程序设计》第三周学习总结

    教材学习内容总结

    核心类

    java.lang.Object

    1. 所有的类都直接派生自这个类。

    java.lang.String

    1. String对象可以包含任意多个字符。
    2. String对象是一个常量,不可修改。

    创建String对象:

    1. String s = "Java "
    2. String message = new String ("Java")
      两种方法的区别:当采用new关键字时,JVM会创建String的一个新实例。当采用字符串字面值的时候,你会得到相同的一个String对象。(如之前已经创建了,该对象可能来自于一个池)。
    比较字符串
    String s1 = "java"
    String s2 = "java"
    String s3 = new String ("java")
    if(s1 == s2){
    	...
    输出True
    }
    if (s1 == s3)
    {
    	...
    #输出False
    # ==比较的是两个对象引用的地址 
    }
    if (s1!=null&s1.equals("java"))
    	return true
    #equal比较两个对象的值是否相同
    if("java".equals(s1))
    	return true
    

    字符串字面值

    1. String s1 = "String"+3
    2. 如果连接一个对象和一个String,调用前者的toString方法。

    java.lang.StringBuffer和java.lang.StringBuilder

    1. String对象是不可变的。
    2. StringBuffer适合在多线程环境中使用;StringBuilder是Buffer的异步版本。
    3. StringBuilder未指定大小的时候会拥有16个字符的大小。如果了16个字符,对象会自动增加。

    基本类型包装器

    • java.lang.Integer
    • java.lang.Boolean
    • java.lang.Character

    java.lang.Class

    1. 每次JVM创建一个对象时,也创建一个java.lang.Class对象来描述该对象的类型。
    2. 同一个类的所有实例,都共享一个Class对象。

    可调用对象的getClass方法来获取Class对象
    可调用对象的getName方法,返回对象表示类的完全限定名称。

    1. forName和newInstance

    java.lang.System

    System类是一个final类
    System.out
    System.in
    System.err
    System.arraycopy
    System.setProperty("password","ttt")
    System.getProperty("password")

    java.util.Scanner

    Scanner scanner = new Scanner (System.in)
    String input = scanner.nextLine()
    

    错误处理

    1. 运行错误
      try...catch...finally...
    2. 编译错误

    教材学习中的问题和解决过程

    • 问题1:java.lang.Object方法中toString返回对象的说明和getClass的区别
    • 问题1解决方案:toString返回对象的toString方法,未重写的toString方法返回@hashcode值;而getClass返回对象的名称。

    代码调试中的问题和解决过程

    • 问题1:从方法中抛出异常的两种方法的顺序
    • 问题1解决方案:
        public static void main(String[] args) throws IOException
    	try...catch ...
    
    1. 在接口的实现类中,如果定义的接口抽象方法中没有抛出异常,在重写的抽象方法中是不能通过throws这种方式抛出异常的,因为父类没有抛出异常,子类是不能抛出异常的。  
    2. 当通过try catch这种方法抛出异常的时候要注意抛出异常的顺序,异常范围小的放在前面,异常范围大的放在后面
    

    代码托管

    上周考试错题总结

    如果有以下程序代码:

    String[] strs=new String[5];

    以下描述正确的是
    A .产生5个String 实例
    B .产生1个String 实例
    C .产生0个String 实例
    D .编译失败

    (1)用new 语句创建对象,这是最常用的创建对象方法。
    (2)运用反射手段,调用Java.lang.Class或者 java.lang.reflect.Constructor类的newInstance()实例方法。
    (3)调用对象的clone()方法。
    (4)运用反序列化手段,调用java.io.ObjectInputStream对象的readObject()方法。

    学习进度条

    代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
    目标 5000行 30篇 400小时
    第一周 150/200 2/2 20/20
    第二周 200/400 1/3 20/40
    第三周 100/500 1/4 10/50
    • 计划学习时间:15小时

    • 实际学习时间:10小时

    参考资料

  • 相关阅读:
    vue-cli+webpack打包,上线
    vue2.0搭建vue手脚架(vue-cli)
    vue -- vue-cli webpack项目打包后自动压缩成zip文件
    Java字符串和常用类
    Java基础
    TF-IDF与TextRank的关键词提取算法应用
    ACl2019|使用Graph-to-Sequence模型为中文文章生成连贯的评论
    ACL2019|巧用文本语境信息:基于上下文感知的向量优化
    探索四川奥秘
    手机浏览器通过Scheme跳转APP,兼容各种手机浏览器
  • 原文地址:https://www.cnblogs.com/Shambryce/p/10549312.html
Copyright © 2011-2022 走看看