Java基础知识

来源:互联网 发布:编程需要数学好吗 编辑:程序博客网 时间:2024/06/07 05:36

简单讲一下java的跨平台原理

由于各操作系统(windows,liunx等)支持的指令集,不是完全一致的。就会让我们的程序在不同的操作系统上要执行不同程序代码。Java开发了适用于不同操作系统及位数的java虚拟机来屏蔽个系统之间的差异,提供统一的接口。对于我们java开发者而言,你只需要在不同的系统上安装对应的不同java虚拟机、这时你的java程序只要遵循java规范,就可以在所有的操作系统上面运行java程序了。
Java通过不同的系统、不同版本、不同位数的java虚拟机(jvm),来屏蔽不同的系统指令集差异而对外体统统一的接口(java API),对于我们普通的java开发者而言,只需要按照接口开发即可。如果我系统需要部署到不同的环境时,只需在系统上面按照对应版本的虚拟机即可。
这里写图片描述

搭建一个java开发环境的步骤

Java开发环境需要些什么?

  1. 适用于我们开发环境的jdk
  2. 对应开发环境eclipse
  3. 还需要web服务器(tomcat)

一、下载对应组件
二、安装
Jdk,按照正常流程安装即可,配置我们的JAVA_HOME,因为后面的eclispe和tomcat会依赖于这个变量.
Eclispe正常解压就ok,设置workspace的默认编码
Tomcat 正常解压就ok,把tomcat集成到eclispe中,安装插件就OK。
…….
Svn/git

讲一下java中int数据占几个字节

Java中有几种基本数据类型?8种
这里写图片描述
Int占 4个字节,32位
Boolean 1位

面向对象的特征有哪些方面

有四大基本特征:封装、抽象、继承、多态
面向对象的封装性,即将对象封装成一个高度自治和相对封闭的个体,对象状态(属性)由这个对象自己的行为(方法)来读取和改变。
张三这个人,他的姓名等属性,要有自己提供的获取或改变的方法来操作。private name setName getName
抽象就是找出一些事物的相似和共性之处,然后将这些事物归为一个类,这个类只考虑这些事物的相似和共性之处,并且会忽略与当前主题和目标无关的那些方面,将注意力集中在与当前目标有关的方面。 就是把现实生活中的对象,抽象为类。
在定义和实现一个类的时候,可以在一个已经存在的类的基础之上来进行,把这个已经存在的类所定义的内容作为自己的内容,并可以加入若干新的内容,或修改原来的方法使之更适合特殊的需要,这就是继承。遗产继承
多态是指程序中定义的引用变量所指向的具体类型和通过该引用变量发出的方法调用在编程时并不确定,而是在程序运行期间才确定,即一个引用变量倒底会指向哪个类的实例对象,该引用变量发出的方法调用到底是哪个类中实现的方法,必须在由程序运行期间才能决定。

Object obj = new xxx();
UserDao userDao = new UserDaoJdbcImpl();
UserDao userDao = new UserDaoHibernateImpl();
靠的是父类或接口定义的引用变量可以指向子类或具体实现类的实例对象,而程序调用的方法在运行期才动态绑定,就是引用变量所指向的具体实例对象的方法,也就是内存里正在运行的那个对象的方法,而不是引用变量的类型中定义的方法。
原则:回答比较抽象问题的时候,要举例说明

有了基本数据类型,为什么还需要包装类型?

基本数据类型,java中提供了8中基本的数据类型。boolean int float等
包装类型:每一个基本的数据类型都会一一对应一个包装类型。
boolean —–>Boolean
Int ——–>Integer
装箱和拆箱
装箱:把基本的数据类型转换成对应的包装类型.
Integer .valueOf(1)
Integer i = 1;自动装箱,实际上在编译时会调用Integer .valueOf方法来装箱
拆箱:就是把包装类型转换为基本数据类型.基本数据类型 名称 = 对应的包装类型。
Integer i = 1;
int j = i;//自动拆箱//int j = i=intValue();手动拆箱
自动拆箱:实际上会在编译调用intValue
Java是一个面向对象的语言,而基本的数据类型,不具备面向对象的特性。
null Integer—>null int—->0 用Integer和int分别表示Person这个类的ID
Max 最大值
min 最小值
缓存值:对象缓存,Integer i=1; integer j= 1;i ==j

原创粉丝点击