2008-1-21   (第一天)

1.Java版本介绍:

  J2EE   Java 2 Enterprise Edition      企业应用  Stures  hiblliate   

  J2SE   Java 2 Stander Edition        多线程  流  

  J2ME  Java 2 Micro Edition         运行与微平台 手机平台

2.Java编程机制:

  边编译边解释型语言

3.Java 虚拟机  Java virtual machine

  Java的运行平台   (类似计算机的CPU的功能)

  Java虚拟机是独立与平台的(使得Java语言有着很好的跨平台特性)

  Java虚拟机读取并处理经过编译的与平台无关的字节码.Class文件

3.1Java虚拟机的具体内容:

JVM的类动态装载技术能够在运行时刻动态地加载或者替换系统的某些功能模块, 而不影响系统其他功能模块的正常运行。

3.2Java虚拟机类装载的实现:

类装载器把一个类装入Java虚拟机中,要经过三个步骤来完成:装载、链接和初始化,其中链接又可以分成校验、准备和解析三步,除了解析外,其它步骤是严格按照顺序完成的,各个步骤的主要工作如下:

  装载:查找和导入类或接口的二进制数据;

  链接:执行下面的校验、准备和解析步骤,其中解析步骤是可以选择的;

  校验:检查导入类或接口的二进制数据的正确性;

  准备:给类的静态变量分配并初始化存储空间;

  解析:将符号引用转成直接引用;

  初始化:激活类的静态变量的初始化Java代码和静态Java代码块。

4.Java运行步骤:

  加载--校验--执行

5.垃圾回收机制:

   Java语言用来释放内存的工具.在内存不使用的时候有垃圾回收机制自动释放,像  c,c++是有程序员编写代码来释放,但java中程序员可以只管用.

   程序员没有办法干预内存的释放.不能控制垃圾回收机制

5.1垃圾回收机制内存分配:

Java中有一种内存存储结构,堆内存.当对象通过new等手段建立时,便在堆内存中开辟空间,然后在栈内存之中会存储一个该堆内存的首地址来映射这个堆内存.但是程序员并不能手动的去释放这片内存,即使你不使用了它也将继续占用着内存,这时便由垃圾回收机 制负责.垃圾回收是一种动态存储管理技术,它自动地释放不再被程序引用的对象,按照特定的垃圾收集算法来实现资源自动回收的功能.

5.2垃圾回收机制的优缺点:

优势:垃圾收集能自动释放内存空间,减轻编程的负担。首先,它能使编程效率提高。可不需要手动的释放内存,有jvm的垃圾回收机制来管理内存空间.其次是它保护程序的完整性, 垃圾收集是Java语言安全性策略的一个重要部份。

  缺点:垃圾收集的一个潜在的缺点是它的开销影响程序性能。Java虚拟机必须追踪运行程序中有用的对象, 而且最终释放没用的对象。这一个过程需要花费处理器的时间。其次垃圾收集算法的不完备性,早先采用的某些垃圾收集算法就不能保证100%收集到所有的废弃内存。当然随着垃圾收集算法的不断改进以及软硬件运行效率的不断提升,这些问题都可以迎刃而解。

5.3使用垃圾回收机制应注意:

1.不要试图去假定垃圾收集发生的时间,这一切都是未知的。

2.Java中提供了一些和垃圾收集打交道的类,而且提供了一种强行执行垃圾收集的方法

3.挑选适合自己的垃圾收集器。

4.关键的也是难把握的问题是内存泄漏。良好的编程习惯和严谨的编程态度永远是最重要的,不要让自己的一个小错误导致内存出现大漏洞。

5.尽早释放无用对象的引用。大多数程序员在使用临时变量的时候,都是让引用变量在退出活动域(scope)后,自动设置为null,暗示垃圾收集器来收集该对象,还必须注意该引用的对象是否被监听,如果有,则要去掉监听器,然后再赋空值。

6.环境变量的配置:

  系统变量

用户变量

  出现相同的变量名,环境变量是两个加到一起

  Path :JDK的BIN路径 ---  操作系统可执行变量的路径

  Classpath : .;   JRE的LIB路径  加 ;JDK的lib路径 --- 配置java的类文件所需要的包的路径

  在CMD中   set xx=xx   然后再看就可以看到 说明已经配好了

7.Eclipse使用

  基本工作空间的创建:

    创建一个静态工程

    创建一个源文件夹

    创建一个PACKAGE

    创建一个类

  建立包的名字的构成方法:机构性质  机构名  项目名   模块名   子模块名

8.Java 中使用NEW创建对象  后面要跟上构造函数

  This.name   指当前对象的

  构造器:当事例化一个对象时要找到一个相应的构造器来创造实,构造器名字与类名字相同

  不要对类内部定义的数据进行直接的操作    private public的区别

  构造函数里面将静态变量做加法运算,每次调用的时候都会有一个增量.

  构造函数里面还可以使用本类的方法,然后在每次构造的时候调用.

  方法名  第一个单词首字母小写  第二个单词首字母大写

  判断字符串相等不要用等号:

  if (sex.equalsIgnoreCase("f"))

fnumber++;

else

mnumber++;

  判断变量是否相等的办法 f 为字符串   整个为判断字符串相等  而不是用等于符号

9.信息的隐藏和封装

避免参数的改变:定义全局变量,在方法体内改变,不要直接改变影响大局

所以要调用类中的private属性是,给其相应的set get器去解决.

java基础编程学习-1相关推荐

  1. java编程基础素数实验报告,JAVA 基础编程练习题1 (输出素数)

    JAVA 基础编程练习题1 (输出素数) JAVA 基础编程练习题1 (输出素数) 题目:判断 101-200 之间有多少个素数,并输出所有素数. 程序分析:判断素数的方法:用一个数分别去除 2 到 ...

  2. java mq编程_MQ java 基础编程

    MQ java 基础编程 编写人:邬文俊 编写时间 : 2006-2-16 联系邮件 : wenjunwu430@gmail.com 前言 通过 2 个多星期对 MQ 学习,在 partner 丁 & ...

  3. Java基础的学习、知识点总结

    文章目录 Java基础的学习 1. 2.MS-DOS(Microsoft Disk Operating System) 命令提示符(cmd) 3.JRE和DJK 4.环境变量的配置 5.Java程序开 ...

  4. Java基础篇 学习笔记

    List item Java基础篇 学习笔记 java基础篇 第1章 计算机.程序和java概述 学习笔记 1.1什么是计算机 简单来说:计算机就是 ' 存储 ' 和 ' 处理 ' 数据的电子设备. ...

  5. 大数据第二阶段Python基础编程学习笔记(待完善)

    大数据第二阶段Python基础编程学习笔记(待完善) 第一章 Python基础语法 3.8 1-1Python概述 python基础部分: ●Python基础语法: 标识符,关键字,变量,判断循环.. ...

  6. Java基础编程及思维导图整理

    我把Java基础编程及思维导图整理的超级详细,小白都能看懂 Java基础编程及其思维导图 目录: Java学习导图 一.Java基本语法 1.关键字与标识符 2.变量分类 3.运算符 4.流程控制 二 ...

  7. Java基础编程及思维导图

    java基础编程及其思维导图 感谢尚硅谷宋红康老师 java学习导图 一.java基本语法 1.关键字与标识符 2.变量分类 3.运算符 4.流程控制 二.数组 1.数组概述 2.一维数组 3.二维数 ...

  8. Java基础编程练习50题(转载)

    JAVA基础编程练习50题 本文对50道经典的java程序题进行详细解说,对于初学者可以跳过一些逻辑性太强的题目,比如第一题用到了方法的递归,初学者可能不理解,最好先看那些有if.for.while可 ...

  9. java并发编程学习一

    java并发编程学习一 什么是进程和线程? 进程是操作系统进行资源分配的最小单位 进程跟进程之间的资源是隔离的,同一个进程之中的线程可以共享进程的资源. 线程是进程的一个实体,是CPU 调度和分派的基 ...

最新文章

  1. WSDL文件简介(附例子)
  2. 使用感知机训练加法模型
  3. python培训班哪些比较好-python培训机构哪家比较好?
  4. 深度学习核心技术精讲100篇(十七)-多标准中文分词( Multi-Criteria-CWS)
  5. 详解Xcode 4发布程序图文并茂教程
  6. 目标检测之选择性搜索-Selective Search
  7. 一张图弄懂java线程的状态和生命周期
  8. antd的 input有下拉_解决antd 下拉框 input [defaultValue] 的值的问题
  9. 文本显示变量_【RPA课堂】UiPath中的变量、数据类型和组件
  10. cookie的设置与取值
  11. 高中教师计算机技能大赛,计算机科学与技术学院第九届教师技能大赛初赛圆满举行...
  12. kmeans中的k的含义_《K-means》知识点与思考
  13. 南阳 oj 6174问题
  14. 我是凡尘最美的莲花-记再读仓央嘉措
  15. O3DE 的Lumberyard 游戏引擎
  16. UEFI和传统引导的区别有哪些
  17. CC2530基础实验四 串口通信
  18. 计算机x线摄影的发展趋势,计算机X线摄影技术----CR 新进展
  19. 程序员的呓语---萎缩的情商
  20. Latex各种箭号符号,以及在箭头上方添加字母等符号的方法

热门文章

  1. AutoCAD二次开发:ObjectArx下的两种命令注册方式
  2. Kalman实际应用总结
  3. 华为测试 称砝码
  4. 鸿蒙分期靠谱吗,花呗借呗“陷阱”正式被确认,这两个禁忌不要触碰,别说没提醒你...
  5. Linux下screen命令实操
  6. 人脸检测MTCNN和人脸识别Facenet(附源码)
  7. 华为云WeLink:让智能办公行走云端
  8. 使用jira管理Scrum敏捷项目实战(四)jira自定义电子看板、敏捷看板、KANBAN配置
  9. 余秋雨 成熟是一种明亮而不刺眼的光辉
  10. 10.8.8.8柠檬wifi网页登录_20.5.24—0元Kindle补货了!速度上车!