1、枚举类,使用enum定义的枚举类默认继承java.lang.Enum,而不是Object类。枚举类的所有实例必须在枚举类中显示列出,否则这个枚举类永远都不能产生实例。相关内容较多,需要后续继续跟进。枚举类里定义抽象方法时无需显示使用abstract关键字将枚举类定义成抽象类,但因为枚举类需要显示创建枚举值,而不是作为父类,所以定义每个枚举类时必须为抽象方法提供实现。

2、java垃圾回收只会回收heap当中的对象,不会回收任何物理资源。垃圾回收机制回收任何对象之前,只会先调用finalize方法,对象在堆内存中,存在三种状态:激活状态、去活状态、死亡状态。两个强制系统垃圾回收的方法:System.gc()

和Runtime.getRuntime().gc()。在强制垃圾回收时,也不能确定系统什么时候回收垃圾,也就是说这时候如果显式的在finalize方法中做相关操作时并不总是有效,可能还没等到finalize方法执行进程已经结束。

3、java中的引用,分为强引用、软引用、弱引用、虚引用。目前未见到软引用、弱引用、虚引用的使用,以后碰到再分析

4、修饰符范围总表

修饰符适用范围总表
  顶层类/接口 成员属性 方法 构造器 初始化块 成员内部类 局部成员
public    
private      
protected      
包访问控制符
abstract        
final      
static      
strictfp        
synchronized            
native            
transient              

5jar打包

创建JAR文件:不显示压缩过程jar cf XX.jar XX  显示压缩过程 jar cvf XX.jar XX

查看JAR文件内容:jar tf test.jar  详细内容  jar tvf test.jar

解压JAR文件:jar xf test.jar  带提示信息解压 jar xvf test.jar

更新JAR文件:jar uf test.jar XX.class 更新时显示详细信息 jar uvf test.jar XX.class

问题描述:HelloDate目录下有HelloDate.class、HelloDate.java文件,利用jar命令将文件夹HelloDate打包成test.jar,修改MAINFEST文件后用java -jar运行提示“wrong name“的错误?

问题解决:HelloDate.java文件在编写时未使用Package打包,生成的HelloDate.class无文件目录信息,因此报错。有两种解决方法;

(1)生成jar文件时,使HelloDate.class位于jar的根目录下

(2)在HelloDate.java中使用Package打包,用jar命令打包生成的Package文件夹

问题总结:产生这个问题的原因还是文件目录的问题,由此可以看出Package的重要性,在以后的编码过程中要注意代码文件与class文件的管理,用好Package,另外若编写的程序是纯控制台运行的话,使用javaw,或双击jar是无法看到输出结果的

java基础(三)的更多相关文章

  1. Java 基础三、接口与内部类

    1.   在Java程序语言中,接口是对类的一种描述.例如Arrays类中sort方法声明可以对对象进行排序,但前提是对象所属的类必须实现Comparable接口. public interface ...

  2. java基础三种循环的使用及区别

    摘要:Java新人初学时自己的一些理解,大神们路过勿喷,有什么说的不对不足的地方希望能给予指点指点,如果觉得可以的话,希望可以点一个赞,嘿嘿,在这里先谢了.在这里我主要说的是初学时用到的Java三个循 ...

  3. java 基础三

    1 运算符 1.1  比较运算符 比较运算符的结果都是boolean类型,也即是要么是true,要么是false. 比较运算符"=="不能写成"=". > ...

  4. Java基础(三)-final关键字分析

    今天来谈谈final关键字的作用, 虽然有很多博文关于final进行了很深的研究,但还是要去记录下谈谈自己的见解加深下印象.下面直接进入主题: 一.final关键字的作用 1.被final修饰的类不能 ...

  5. java基础(三)-----java的三大特性之多态

    面向对象编程有三大特性:封装.继承.多态. 封装隐藏了类的内部实现机制,可以在不影响使用的情况下改变类的内部结构,同时也保护了数据.对外界而已它的内部细节是隐藏的,暴露给外界的只是它的访问方法. 继承 ...

  6. java基础(三):反射、反序列化破解单列模式和解决方式

    单例模式指的是一个类只有一个对象,通过一些措施达到达到这个目的.但是反射和反序列化可以获得多个不同的对象. 先简单的认识一下单例模式 一:单例模式 通过私有构造器,声明一个该类的静态对象成员,提供一个 ...

  7. Java基础三(Scanner键盘输入、Random随机数、流程控制语句)

    1.引用类型变量的创建及使用2.流程控制语句之选择语句3.流程控制语句之循环语句4.循环高级 ###01创建引用类型变量公式 * A: 创建引用类型变量公式 * a: 我们要学的Scanner类是属于 ...

  8. java基础(三) 加强型for循环与Iterator

    引言   从JDK1.5起,增加了加强型的for循环语法,也被称为 "for-Each 循环".加强型循环在操作数组与集合方面增加了很大的方便性.那么,加强型for循环是怎么解析的 ...

  9. java基础 三 概念和java程序的结构.

    一.java的一些概念: JRE(java  runtime environment):java程序运行环境,如果要运行java程序,需要jre支持.jre里包含jvm JDK(java  devel ...

随机推荐

  1. 关于WEB项目的一点想法

    有点失落.迷茫,差点在上班的时候发了火.原因是之前离职的一位同事,在代码里不加注释,而且百般偷懒,致使很多应该的验证没有验证,很多应该考虑到的情况没有考虑.因为是老员工,我相比他来说是新员工.气势上总 ...

  2. mysql 查询当天的数据库

    时间存储格式是时间戳 SELECT *  FROM 表名  WHERE 时间字段 BETWEEN UNIX_TIMESTAMP( CURDATE( ) )  AND UNIX_TIMESTAMP( N ...

  3. python基础2(数据类型、数据运算、for循环、while循环、列表)

    1.数据类型 python使用对象模型来存储数据,每一个数据类型都有一个内置的类,每新建一个数据,实际就是一个对象,即所有数据都是对象. 对象的3个特性: 身份:即内存地址,可以用id()来获取 类型 ...

  4. Arcgis 10.1安装

    来源http://download.csdn.net/detail/l_j_kin/7310665#comment 测试有效,存着备用,转过来不自己写了 安装desktop 打开“注册机”,功能选择a ...

  5. Sybase 出错解决步骤

    总结: 1.出错该错误可以先检查一下Sybase BCKServer服务有没有启动 2.在dsedit看能否ping通备份服务 3.检查master库sysservers表的配置 4.如在备份数据库d ...

  6. Yii2中如何将Jquery放在head中的方法

    原文地址: https://my.oschina.net/kenblog/blog/547602 方法一(推荐):针对jquery进行components配置,指定Yii2自带jquery自带资源出现 ...

  7. 大熊君大话NodeJS之------MongoDB模块(额外篇)

    一,开篇分析 这篇属于扩展知识篇,因为在下面的文章中会用到数据库操作,所以今天就来说说它(Mongodb模块). (1),简介 MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为 ...

  8. JS自动缩放页面图片

    /** * 缩略图 * * @param bool isScaling 是否缩放 * @param int width 宽度 * @param int height 高度 * @param strin ...

  9. PHP的ob_start()函数用法

    经典参考片段: <?php ob_start(); echo '123'; echo '456'; echo '789'; $content = ob_get_contents(); ob_en ...

  10. [BZOJ1112][POI2008]砖块Klo

    [BZOJ1112][POI2008]砖块Klo 试题描述 N柱砖,希望有连续K柱的高度是一样的. 你可以选择以下两个动作 1:从某柱砖的顶端拿一块砖出来,丢掉不要了. 2:从仓库中拿出一块砖,放到另 ...