zoukankan      html  css  js  c++  java
  • 我的Java之旅 第四课 JAVA 语言语法 基础

       1  整型

              int num = 1_000_000; //从java 7开始支持的语法 ,只是让人更易读,java编绎器会去除
      2  字符串
           一定不能使用==运算符检测两个字符串是否相等,而应该使用equals() ,如下
             boolean result ="hello".substring(0,2)=="he"; // result为false
           boolean result ="hello".substring(0,2).equals("he"); // result为true
        charAt()  //返回指定位置的字符
           字符串API 
              Java中String类包含了50多个方法,在 java.lang.string  包下
       3 输入输出
        System.out.println()     ,在 java.lang  包下
            文件输入与输出,    Scanner对象
       4 流程控制
            break  java提供了一种带标签的break语句,可跳出指定的已定义的标签位置,
       5 大数值
        java.math包中的 BigInteger  和 BigDecimal   
      6 数组 
      for(variable:collection)statement
    示例:for(int element:coll) 
              System.out.println(element);  //打印数组每个元素
     数组拷贝   copyTo()
    数组排序   sort()
       7 对象和类
      静态域(字段)和静态方法 ,属于类 而不属于类实例,类的所有实例共享一份数据
      静态常量,静态的变量用得很少,静态常量却使用比较多。
    静态方法 是一种不能向对象实例操作的方法。可以认为静态方法是没有this参数的方法
      构造器
       this(param,param)  利用this 可调用同一类的另一个构造器
     初始化块  
     类初始时,首先运行初始化块,然后才运行构造器的主体部分。这种机制不是必需的,也不常见,通常,直接将初始化代码放在构造器中。
      对象析构与finalize方法
      Java有自动垃圾回收器,所以不支持析构器。
      当某些对象使用了内存之外的资源,可以为任何一个类添加finalize方法。该方法在垃圾回收器清除对象之前调用。在实际应用中,不要依赖于使用finalize方法回收任何短缺的资源,因为很难知道这个方法什么时候才能够调用 。
       包
       Java使用包将类组织起来。使用包的主要原因是确保类名的唯一性。
       所以,Sun公司建议将公司的域名倒序作为包名。从编绎器的角度来看,嵌套的包之间没有任何关系。
       导入 import java.util.*   或者 import java.util.Date;
       8 继承
      super 关键字
      super()  调用父类的构造器 ;super.func()   调用父类 的方法
      final 
       确保方法或者类不会在子类中改变语义.
       9 接口
    接口中不能包含实例域或者静态方法,但可以包含常量 .
     接口实现多继承
    implements  是一个类实现一个接口用的关键字
      10 内部类
     内部类是定义在另一个类中的类.
      局部内部类
      可以在一个方法中定义局部类,局部类不能用public或private 进行声明,它的作用域被限定在声明该局部类的块中.所以对外部完全隐藏.
     匿名内部类
     假如只创建这个类的一个对象,就不必命名了.这种类被称为匿名内部类.  个人感觉像C#中的匿名类或者类初始化器.
     静态内部类
    有时候,使用内部类只是为了把一个类隐藏在另外一个类的内部,并不需要内部类引用外围类对象.此时,可以将内部类声明为static,以便取消产生的引用.
      11 异常
    异常对象都是派生于Throwable类的一个实例,用户可以创建自己的异常类.
     Throwable下一层分为两个分支:Error和Exception 
         Error Java运行时系统的内部错误和资源耗尽错误.应用程序不应该抛出这种类型的对象.这种错误很少出现.
         Exception  设计程序时,需要关注Exception层次结构.它又分解为两个分支:
                              一个派生于RuntimeException,由程序错误导致,如数组越界,类型转换错误等,
                             另一个包含其他异常,像I/O错误这类问题.如打开不存在的文件等.
         Java规范将派生于以上两个类的异常称为未检查(unchecked)异常,所有其它异常称为已检查(checked)异常.
     异常捕获
         如果想传递一个异常,就必须在方法的首部添加一个throws说明符.
     断言
        assert 条件;和 assert 条件:表达式;  (默认情况下被禁用。在eclipse中,必须开启相关设置。具体打开Window-preferences,选择Installed JREs,选择相关版本,点击edit,在Default VM arguments里面输入-ea就可以了。)
    在java中,给出了三种处理系统错误的机制
        a 抛出一个异常
       b 记日志  
       c 断言    断言是致命的、不可恢复的错误;断言只用于开发和测试阶段。
    记录日志    
    // 日志处理 包
        java.util.logging.Logger;  
     java.util.logging.Level; 
      12  调试技巧
         打印或者记录变量 的值;
         在每个类中放main()函数,这样就可以对每个类进行单元测试。一个鲜为人知却非常有效的技巧。
        JUnit框架
        日志代理等等。
  • 相关阅读:
    python中的单向链表实现
    Django中的Form表单验证
    顺序表的原理与python中的list类型
    HttpServletRequest get
    maven压缩js css
    left join inner join 区别
    Spark运行模式:cluster与client
    java 变量 final 小结
    eclipse svn 删除不了项目,合并不了问题
    hadoop HDFS常用文件操作命令 (转)
  • 原文地址:https://www.cnblogs.com/net515/p/6472107.html
Copyright © 2011-2022 走看看