java游戏开发和设计的概念
(2)分布式:Java拥有强大的TCP/IP协议族例程库,Java应用可以通过URL经由网络访问远程对象。由于servlet机制的出现,Java编程非常高效,现在很多大型web服务器都支持servlet。
(3)OO:面向对象设计是一种专注于对象和对象接口的编程技术。它的面向对象不同于C++的地方在于它不同于多重继承处理和Java原有的类模型。
(4)健壮性:Java采用安全指针模型,可以降低重写内存和数据崩溃的可能性。
(5)安全性:用Java设计网络和分布式系统,带来了新的安全问题。Java可以用来构建防病毒和防攻击系统。事实证明,Java在反病毒方面做得很好。
(6)中性架构:Java用中性生成架构编译目标文件格式,可以在很多处理器上执行。编译器生成的指令字节码实现了这个特性,这个字节码可以在任何机器上解释和执行。
(7)可移植性:Java对基本数据结构类型的大小和算法有严格的规定,所以可移植性好。
(8)多线程:Java处理多线程的过程非常简单,Java把多线程的实现交给底层的操作系统或者线程化的程序。所以多线程是Java作为服务器端开发语言受欢迎的原因之一。
(9)applet和servlet:可以在网页上执行的程序称为applet,很多浏览器都需要支持Java,而applet支持动态网页,很多其他语言都做不到。
基本概念
在1。OOP,唯一重要的是对象的接口是什么,就像一个电脑厂商,不管电源内部结构如何,重要的只是它能不能给你供电,也就是说,只要你知道能不能,不是怎么样,为什么。所有的程序都是由一定的属性和行为对象组成的,对不同对象的访问都是通过函数调用来完成的,而对象之间的所有通信都是通过方法调用,通过封装对象数据,这是非常庞大的。
2.2中最重要的思想。OOP是类,是模板,是蓝图。对象是从类构造的,也就是说,创建了该类的一个实例。
3.封装:将数据和行为组合在一个包中的过程)并对对象用户隐藏数据。对象中的数据称为其实例字段。
4.通过扩展一个类得到一个新的类叫做继承,所有的类都是从对象根超类扩展而来,下面会介绍。
5.物体的三个主要特征
行为-解释这个对象能做什么。
State -对象在应用方法时的反射。
身份——区别于其他类似行为对象的标志。
每个对象都有一个唯一的身份,这三个因素相互作用。
6.阶级之间的关系:
使用-a:依赖关系
Has-a:聚合关系
Is-a:继承-举例:A类继承B类,此时A类不仅有B类的方法,还有自己的方法。
7.使用构造函数构造对象:建议使用构造函数。构造函数是构造对象并初始化它的特殊方法。
例如:数据类的构造函数叫做Data。
new data()-构造一个新对象并初始化当前时间。
data happyday = new data()-将一个对象赋给一个变量happy day,这样该对象就可以多次使用。这里要声明的变量不同于对象变量。new返回的值是一个引用。
构造函数的特点:构造函数可以有0个,一个或多个参数。
构造函数和类具有相同的名称。
一个类可以有多个构造函数。
构造函数没有返回值。
构造函数总是与new运算符一起使用。8.重载:当多个方法名称相同但参数不同时,就会发生重载。编译器必须选择调用哪个方法。
9.package)java允许将一个或多个类集合在一起组成一个组,称为包,以便于任务的组织。标准的java库分为很多包,比如java.lang java.util java,net等。,并且包是分层的。所有Java包都在Java和javax包层次结构中。
10.继承思想:允许在已有类的基础上建立新的类。当您继承一个现有的类时,您可以重用该类的方法和字段,并且可以向新类添加新的方法和字段。
11.扩展类:扩展类充分体现了IS-A的继承关系,形式是:类(子类)扩展(基类)。
12.多态:在java中,对象变量是多态的,而在java中不支持多重继承。
13.动态绑定:一种调用对象方法的机制。
(1)编译器检查对象声明的类型和方法名。
(2)编译器检查方法调用的参数类型。
(3)静态绑定:如果方法类型是priavte static final,编译器会确切地知道要调用哪个方法。
(4)当程序运行使用动态绑定调用方法时,那么虚拟机必须调用X所指向的对象的实际类型匹配的方法版本。
(5)动态绑定:这是一个非常重要的特性,它可以使程序具有可扩展性,而无需重新编译现有代码。
14.final class:为了防止其他人从你的类派生新类,这个类是不可扩展的。
15.动态呼叫比静态呼叫耗时更长。
16.抽象类:指定一个或多个抽象方法的类本身必须被定义为抽象的。
示例:公共抽象字符串getdescription
17的每个班。Java是从Object类扩展而来的。
18.object类中的Equal和toString方法。
Equal用于测试一个对象是否等于另一个对象。
ToString返回表示对象的字符串,几乎每个类都重载该方法以返回当前状态的正确表示。
(toString方法是一个非常重要的方法)
19.通用编程:任何类类型的所有值都可以替换为与object相同类的变量。
20.ArrayList: ArrayList动态数组列表是一个类库,在java.uitl包中定义,可以自动调整数组的大小。
21.类对象中的getclass方法返回ckass类型的实例。程序启动时,main方法中包含的类会被加载,虚拟机会加载它需要的所有类,每个加载的类都会加载它需要的类。
22.class为编写可以动态操作java代码的程序提供了强大的函数反射,这对JavaBeans特别有用。使用反射Java可以支持VB程序员习惯的工具。
可以分析类能力的程序叫reflector,Java中提供这个功能的包叫Java.lang.reflect反射机制非常强大。
1.运行时分析类的能力。
2.在运行时浏览类的对象。
3.实现通用数组操作代码。
4.提供方法对象。而且这个机制主要是针对工具而不是应用和程序。
反射机制最重要的部分是允许你检查类的结构。使用的API有:
Java.lang.reflect.Field返回一个字段。
Java.reflect.Method返回方法。
Java.lang.reflect.Constructor返回参数。
方法指针:java没有方法指针。将一个方法的地址传递给另一个方法,以后可以调用它。接口是一个更好的解决方案。
23.接口描述了一个类应该做什么,但没有说明如何做。一个类可以实现一个或多个接口。
24.接口不是一个类,而是满足接口需求的类的一组规范。
实现接口需要两个步骤:
1.声明该类需要实现的指定接口。
2.提供接口中所有方法的定义。
声明类实现接口需要使用implements关键字。
类actionb实现可比较的。它的Action B需要提供CompareTo方法,接口不是类。不能用new实例化接口。
25.一个类只有一个超类,但是一个类可以实现多个接口。Java中的一个重要接口:Cloneable
26.接口和回调。一种常见的编程模式是回调模式,在这种模式下,您可以在特定时间发生时在回调对象上指定方法。
示例:ActionListener接口监视。
类似的API有:java.swing.JOptionPane
java.swing .定时器
java.awt.Tookit
27.对象克隆:克隆方法是对象的保护方法,这意味着您的代码不能简单地调用它。
28.内部类:内部类的定义是在另一个内部定义的类。
原因是:
1.内部类的对象可以访问创建它的对象的实现,包括私有数据。
2.对于同一个包中的其他类,可以隐藏内部类。
3.匿名内部类可以很容易地定义回调。
4.使用内部类编写事件驱动程序非常方便。
29.代理类(proxy):
1.指定接口所需的所有代码。
2.由2.object类定义的所有方法(toString equals)
30.数据类型:java是一种强调类型的语言,每个变量都要先声明自己的类型。Java中的total * * *有八种基本类型。四个是整数,两个是浮点,一个是字符,用于Unicode编码,布尔。