CoreJava day1

当你对自己诚实的时候,世界上没有人能够欺骗得了你

----------------------------------------------------

Unix & Linux

  Features of Initialization Files:
 
  Bourne-again shell (bash shell) Environment: $HOME/.bash_profile

  Sun Solaris OS (csh shell): $HOME/.cshrc

  Example command:
  $ touch .bash_profile (execute immediately)

Unix 登陆信息日志文件 -->  /etc/wtmpx
p.s.: 解析for Tarena  $ lwtmpx  --> ~/wtmpx

----------------------------------------------------

CoreJava

三层架构:
显示(客户端)层 ---> 业务逻辑层 ---> 数据库层

C/S架构:
Client / ServerDB
优点:简单,适用于小作坊
缺点:Client端的升级维护麻烦

B/S:
Browse/ ServerDB
目前J2EE中,广泛采用的架构,无须过分关注Client端,全心致力于中间层的开发和维护,是一种广泛流行的架构体系。

----------------------------------------------------
  
关于 CLASSPATH :
这是一个容易忽略已经出错的地方

分2部分说明:
1〉  .java 文件没有 package 语句

   类的装载成功完全取决于你的 CLASSPATH,而不是在命令中手动制定目录的相对或者绝对路径,CLASSPATH的配置方式视平台而异。

2〉  有 package 语句
    也是取决于CLASSPATH中的配置,唯一不同的点必须加上完整的 包名(Package Name),例如:java com.javatogo.tarena.HelloWorld

windows中的设置

在cmd模式下:
set CLASSPATH = .;...   (其中 . 表示当前路径以  ,其中 ...表示其它你想设置的.class文件路径并且以 ; 符号分割多个不同路径)

Linux中的设置以 Fedora5 为例
shell中使用  vi $HOME/.bash_profile
编辑
JAVA_HOME=/opt/j2se1.5.08   #(这个是jdk的安装路径,以系统实际为准)
PATH=$JAVA_HOME/bin:$PATH  
#(之所以$JAVA_HOME 写在$PATH 之前,道理和windows下的一样,会先搜索javahome下的bin目录中的可执行文件)
CLASSPATH=.:...  #(不明白的话,参考上面说过的,Linux下以: 符号分割多个参数)

----------------------------------------------------
Java的运行时(Runtime)情况:

   .class  
(运行类文件,传入虚拟机)
||
||
||
//
  Class loader 
(类装载器,为了防止他人非法反编译,建议自己设计装载器,以此来进行加密解密操作)

||
||
||
//

  Byte code verifier 
(字节码文件的校验,为了防止"牛人",改写 .class文件)

||   //
||    //
||     __/ 
//   Interpreter (另一种解释方式,一次性编译全部,速度比解释执行快)

JIT Code generator
(解释执行,java程序编译运行之所以慢的根本原因,惭愧惭愧..)

||
||
||
//

    Hardwate  (根据不同平台的java虚拟机,将.class文件转换成机器码,以供运行,java夸平台的原理

----------------------------------------------------

关于 Garbage Collection(垃圾回收器)

调用 java.lang.System.gc() 或者  java.lang.Runtime.ge()并没有立刻启动垃圾回收机制,只是建议虚拟机执行,至于是否执行垃圾回收取决于系统资源,没有规律性。

关于 Garbage Collection 的几点说明:
1. 堆内存中的对象计数器为0 , 该对象将成为垃圾回收器的目标。
2. 垃圾回收器发生的规律不确定。
3. Garbage Collection 是一个 低优先级的进程。只有单独线程

----------------------------------------------------

关于Java 与 Cafe的 “不解情缘”

使用文本编辑器如UltraEdit打开任何一个 .class 文件,显示的16进制编码,第一行的前4组是如下字母
0  1  2  3
CA FE BA BE


其实就是英文单词 Cafe Babe,任何一个 正常编译的 .class 文件都是如此开头。
之所以命名为java,有一段典故,传说为了给这套系统取名,几个家伙在一家名为Java(爪哇)的咖啡屋喝cafe, 突然就决定以Java咖啡的名字命名这套系统。java就这样出现了
java与cafe的关系甚是“亲密”。
其实java的程序代码也像cafe那样“香浓上品”,让人为之着迷,让人不腻味。
套用一句广告词: 爱java 爱生活
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值