Java基础串理

设计者联盟

2016-08-08 10:13

今天抽了些时间翻阅资料复习一下Java部分基础知识,现整理笔记在此以备巩固。

Java主要应用领域

–企业级应用:主要指复杂的大企业的软件系统、各种类型的网站。Java的安全机制以及它的跨平台的优势,使它在分布式系统领域开发中有广泛应用。应用领域包括金融、电信、交通、电子商务等。

–Android平台应用:Android应用程序使用Java语言编写。Android开发水平的高低很大程度上取决于Java语言核心能力是否扎实。

–移动领域应用,主要表现在消费和嵌入式领域,是指在各种小型设备上的应用,包括手机、PDA、机顶盒、汽车通信设备等。

java语言起源、特点

起源: java之父Jgosling与其团队在开发”Green”项目时,发现C缺少垃圾回收系统、可移植的安全性、分布式程序设计、和多线程功能。于是,他们想要一种易于移植到各种设备上的平台。

特点: Java从C语言和C++语言继承了许多成份,甚至可以将Java看成是类C语言发展和衍生的产物。比如Java语言的变量声明,操作符形式,参数传递,流程控制等方面和C语言、C++语言完全相同。因此Java语言是易学的。Java语言的语法与C语言和C++语言很接近,使得大多数程序员很容易学习和使用Java。

但同时,Java是一个纯粹的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)、多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间。

JDK1.5引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱。

Java语言是强制面向对象的。Java语言提供类、接口和继承等原语,为了简单起见,只支持类之间的单继承,但支持接口之间的多继承,并支持类与接口之间的实现机制(关键字为implements)。

Java语言是分布式的。Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。

Java语言是健壮的。Java的强类型机制、异常处理、垃圾的自动收集等是Java程序健壮性的重要保证。对指针的丢弃是Java的明智选择。

Java语言是安全的。Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击。如:安全防范机制(类ClassLoader),如分配不同的名字空间以防替代本地的同名类、字节代码检查。

Java语言是解释型、跨平台的。Java程序(后缀为java的文件)在Java平台上被编译为体系结构中立的字节码格式(后缀为class的文件),然后可以在实现这个Java平台的任何系统的解释器中运行。

Java语言是原生支持多线程的。在Java语言中,线程是一种特殊的对象,它必须由Thread类或其子(孙)类来创建。

学习【Java】有困难需要视频资料可以加 婷婷QQ 3185337157 一起学习交流,晚上有时间还可以参加永久免费

分享的高清视频直播课程(免费分享哦)

Java基础模块图解

Java基础串理

面向对象

面向对象与面向过程

Java基础串理

学习面向对象内容的三条主线:

1. java类及类的成员;

2. 面向对象的三大特征;

3. 其它关键字。

1. java类及类的成员

面向对象程序设计的重点是类的设计。Java中用类class来描述事物,类主要由属性、方法(行为)组成,关于属性、方法相关概念可以简单理解成:

Field = 属性 = 成员变量,Method = (成员)方法 = 函数

类成员的基础构成如下:

Java基础串理

还可以是这样:

Java基础串理

有了类和类的成员,要如何使用它们呢?通过java类的实例化,即创建类的对象。一般开发中,

先去找具有所需功能的对象来用

如果该对象不存在,那么创建一个具有所需功能的对象

这样简化开发并提高复用

类和对象的关系:

Java基础串理

通过对象实例使用类和类的成员:

使用new +构造器创建一个新的对象;

使用“对象名.对象成员”的方式访问对象成员(包括属性和方法);

如果创建了一个类的多个对象,对于类中定义的属性,每个对象都拥有各自的一套副本,且互不干扰。

在一个类中:类中的方法可以直接访问类中的成员变量或其它方法。(例外:static方法访问非static,编译不通过。)

2.面向对象的三大特征

封装 (Encapsulation)

继承 (Inheritance)

多态 (Polymorphism)

封装 (Encapsulation)

使用者对类内部定义的属性(对象的成员变量)的直接操作会导致数据的错误、混乱或安全性问题,如:

Java基础串理

Java中通过将数据声明为私有的(private),再提供公共的(public)方法:getXxx()和setXxx()实现对该属性的操作,以实现下述目的:

隐藏一个类中不需要对外提供的实现细节;

使用者只能通过事先定制好的方法来访问数据,可以方便地加入控制逻辑,限制对属性的不合理操作;

便于修改,增强代码的可维护性;

public class Animal{

//将属性legs定义为private,只能被Animal类内部访问

private int legs;

//定义方法 eat() 和 move()

public void setLegs(int i){

if (i != 0 && i != 2 && i != 4){

System.out.println("Wrong number of legs!");

return;

}

legs=i;

}

public int getLegs(){

return legs;

}

}

public class Zoo{

public static void main(String[] args){

Animal xb=new Animal();

xb.setLegs(4); //xb.setLegs(-1000);

xb.legs=-1000; //非法

System.out.println(xb.getLegs());

}

}

四种访问权限修饰符:

Java基础串理

继承 (Inheritance)

多个类中存在相同属性和行为时,将这些内容抽取到单独一个类中,那么多个类无需再定义这些属性和行为,只要继承那个类即可。此处的多个类称为子类,单独的这个类称为父类(基类或超类)。可以理解为:“子类 is a 父类”。

Java基础串理

类继承语法规则: class Subclass extends Superclass{ }

Java基础串理

Java基础串理

Java基础串理

Java基础串理

多态 (Polymorphism)

多态性,是面向对象中最重要的概念,在java中有两种体现:

1. 方法的重载(overload)和重写(overwrite)。

2. 对象的多态性 :父类的引用指向子类对象实体(可以直接应用在抽象类和接口上)

Java基础串理

Java基础串理

Java基础串理

3.其它关键字

this

super

static

final

abstract

interface

关键字this

this是什么?

this表示当前对象,可以调用类的属性、方法和构造器。当在方法内需要用到调用该方法的对象时,就用this。

它在方法内部使用,即这个方法所属对象的引用;

它在构造器内部使用,表示该构造器正在初始化的对象。

Java基础串理

Java基础串理

关键字super

Java基础串理

Java基础串理

关键字static

当我们编写一个类时,其实就是在描述其对象的属性和行为,而并没有产生实质上的对象,只有通过new关键字才会产生出对象,这时系统才会分配内存空间给对象,其方法才可以供外部调用。

我们有时候希望无论是否产生了对象或无论产生了多少对象的情况下,某些特定的数据在内存空间里只有一份,例如所有的中国人都有个国家名称,每一个中国人都共享这个国家名称,不必在每一个中国人的实例对象中都单独分配一个用于代表国家名称的变量。

Java基础串理

Java基础串理

Java基础串理

Java基础串理

关键字final

在Java中声明类、属性和方法时,可使用关键字final来修饰,表示“最终”。

Java基础串理

Java基础串理

Java基础串理

Java基础串理

抽象类(abstract class)

随着继承层次中一个个新子类的定义,类变得越来越具体,而父类则更一般,更通用。类的设计应该保证父类和子类能够共享特征。有时将一个父类设计得非常抽象,以至于它没有具体的实例,这样的类叫做抽象类。

Java基础串理

Java基础串理

关键字interface(接 口)

Java基础串理

Java基础串理

Java基础串理

Java基础串理

Java基础串理

学习【Java】有困难需要视频资料可以加 婷婷QQ 3185337157 一起学习交流,晚上有时间还可以参加永久免费分享的高清视频直播课程(免费分享哦)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值