java复习总结(仅供参考)
Java特点
虚拟机 P6
JDK
Java语言的开发工具
—J2SE (Java 2 Platform Standard Edition ):以Web为中心的客户端或服务器端的软件开发
—J2EE (Java 2 Platform Enterprise Edition):开发企业级和服务器端的应用。
—J2ME (Java 2 Platform Micro Edition):针
对消费类的电子设备如蜂窝电话、数字置顶盒、汽车导航系统等。语言精简、运行环境高度优化。
整型实型字符型逻辑型
一维数组
定义:由简单数据类型构成的线性数据序列。
定义式:数据类型数组名[ ];数据类型 [ ] 数组名;
例: intArray_a [ ];
floatArray_b [ ];
doubleAray_c [ ];
一维数组初始化
概念:静态或动态地为数组申请内存空间。
静态申请:利用已知的数组元素的个数,在数组定义时为其初始化。
动态申请:利用new操作符为数组初始化。数组名=new 数组类型 [数组元素个数];
例:intArray_a[]={1,2,3,4,5,6,7,8,9};
intArray_a [ ];Array_a =new int [9];
数组元素的引用
数组名[数组下标];
例: Array_b [2];
Aray_c [6 ];
定义类的格式如下:
类修饰符 class 类名 extends 基类implements接口{
成员变量
成员方法
其中,class是定义类的关键字,extends是实现继承的关键字,implements是实现接口的关键字。
对象的创建和使用
创建对象
创建对象的一般格式为:
类名对象名 = new 构造方法([参数表]);
P103
对象的创建和使用
创建对象
创建对象的一般格式为:
类名对象名 = new 构造方法([参数表]);
向上转型
子类对象向父类对象的类型转换,父类引用指向子类对象的类型转换。
这就是“向上转型”(upcasting ),它把子类对象直接赋给父类引用。“向上转型”不用强制转型。
向下转型
把指向子类对象的父类引用赋给子类引用叫“向下转型”(downcasting)。
例:有两个类,Father是父类,Son类继承自Father。Father f1 =new Son() ;
这就是“向上转型”(upcasting ),它把子类对象直接赋给父类引用。“向上转型”不用强制转型。
Son s1=(Son)f1;
这就是“向下转型”(downcasting),它把父类对象的引用强制赋给子类引用。“向下转型”要强制转型。向下转型即把父类对象转换为子类对象。
抽象类
抽象类的定义与一般类一样都有数据和方法,定义格式与一般类也非常类似,只是在定义类的class前增加一个关键字abstract就表示定义一个抽象类,即用abstract说明的类称为抽象类。
例:定义一个抽象类Animal。
public abstract class Animal {
String name;
int age;
public abstract void run () { }
}
抽象方法一定包含在抽象类中,抽象方法同样不能直接实现,它只能在子类中被实现。
程序运行结果:
接口的概念
接口(interface)也称为界面,是用来实现类间多重继承功能的一种结构。
Java语言中的接口是用来组织程序中的各种类和调节它们之间相互关系的一种结构,在语法上与类有些相似。在接口中定义了若干抽象方法和常量,形成一个属性集合,该属性集合通常对应了某一组功能。
需要特别说明的是,Java中一个类获取某一接口定义的
功能,并不是通过直接继承这个接口中的属性和方法来实现的。因为接口中的属性都是常量,接口中的方法都是没有方法体的抽象方法。也就是说,接口定义的仅仅是实现某一特定功能的一组功能的对外接口和规范,而并没有真正地实现这个功能,这个功能的真正实现是在“实现”这个接口的各个类中完成的。
AWT应用程序基本架构
按照图形用户界面设计思想和步骤,AWT应用程序基本架构如下:
import java包;
访问权限容器类 extends容器父类
{
public static void main(String[] args)
{
创建容器类窗体对象(Container Object)
确定一种布局管理器(Layout Manager)。
在容器类中放置组件(Component)
进行事件处理(Event Handling)。
}
}
// 例7_1 Ex7_1.java
importjava.awt.*;
public class Ex7_1 extends Frame
{
public static void main (String[] args)
{
Frame a = new Frame ( ); //创建窗体对象
a.setTitle ("AWT 应用程序!"); //设置对象属性a.setSize (600,300);
a.setVisible (true);
}
}
AWT中提供3个用于在屏幕上显示窗口的构件:Window,Frame和Dialog。我们把它统称为窗口构件。
AWT容器分为两类:外部容器和内部容器。
AWT提供了5中标准的布局管理器,分别是:FlowLayout:从左到右,从上到下地显示构件
BorderLayout:按北、东、西、南和中心位置将构件布置在容器四周和中心,可以规
定构件之间的间隙。
CardLayout:从一组构件中每次显示一个构件,构件可以被换进和换出;
GridLayout:在网格中布置构件,每个构件都扩展以填满它的网格单元。可以规定构
件之间水平和垂直间隙;
GridBagLayout:使用一组详细的网格约束条件在一个网格中安排构件;
AWT中提供以下基本组件:
1、按钮组件:Button
2、画布组件:Canvas
3、复选框组件:Checkbox
4、下拉列表组件:Choice
5、标签组件:Label
6、列表组件:List
7、滚动条组件:Scrollbar
8、多行文本组件:TextArea
9、文本域组件:Texctfield
10、菜单条组件
事件处理
前面简要介绍了AWT提供的GUI组件和容器,但是,有了GUI 组件还是无法构造一个应用系统的用户界面,因为这样构造出的图形用户界面是无法与用户交互的,一个完整的用户界面系统还必须具备事件处理能力。
弄清三个问题:什么是“事件”。如何保存“事件”。如何处理“事件”。
1、事件和事件源
事件:是发生在应用程序上的用户的一个操作。当用户和应用程序进行交互时,就需要用到事件。
事件源:是产生或发出事件的主体。例如,当单击了图形用户界面上的一个按钮后,按钮就会产生一个鼠标按下的事件。此时,按钮就是事件源。
2、保存事件
事件是事件源发出的一个操作。它被存储在事件类(对象)中。在AWT中定义了各种事件类,如鼠标事件(MouseEvent)和窗口事件(WindowEvent)等。
JDK提供各种事件类保存各种事件信息。谁把“事件”保存在“事件类”中。
AWT的每个事件都包含若干个域,从事件域中可以获知这个事件的详细内容。常见事件域如下:
1、id域:事件类型
2、target域:事件的作用对象,即该事件是在哪个组件上发生的。
3、when域:事件发生时间。
4、x.y域:事件发生的位置。
5、key域:键盘事件发生时键入的键值。
6、modifiers域:事件发生时的功能键值,指
alt,ctrl,shift键的状态
7、arg域:事件的其他参数,根据不同的事件有所不同
3、处理事件
程序为组件(容器和基本组件)“注册(添加)” JDK提供的事件监听器,监听要处理的“事件(类)”是否产生。当该事件源发出此类事件时,事件监听器就会得到通知,即监听到事件产生(事件类中有内容)。然后,事件监听器就使用相应的事件处理方式对事件进行处理。
事件监听接口
在AWT中,事件监听按口是java.awt.event包中的一类接口,其中定义了当被监听的事件发生时,需要调用的方法。
// 例7_20 Event.java
import java.awt.*;
import java.awt.event.*;
public class Event extends Frame
{
public static void main (String[] args)
{
Frame a = new Frame ( ); //创建窗体对象
a.setTitle ("AWT 事件处理程序!"); //设置对象属性
a.addWindowListener (new WindowAdapter() {
public void windowClosing(WindowEvent e) { System.exit(0);
}
});
a.setSize (600,300);
a.setVisible (true);
}
}
Java事件程序
// CloseDemo3.java
package Event;
importjava.awt.*;
importjava.awt.event.*;
public class CloseDemo3 extends Frame{
public static void main (String args[]) {
Frame frame = new Frame("关闭窗口例程3");
frame.setSize(400,100);
frame.setVisible(true);
frame.addWindowListener(new WindowAdapter() { public void windowClosing (WindowEvent e) { System.exit(0);
}
});
}
}
// 例7_2 Ex7_2.java
importjavax.swing.*;
public class Ex7_2 extends JFrame
{
public static void main(String[] args)
{
JFrame a = new JFrame ( ); //创建窗体对象
a.setTitle ("Swing 应用程序!"); //设置对象属性
a.setSize (600,300);
a.setVisible (true);
}
JOptionPane类
1、属于javax.swing 包。
2、功能:定制四种不同种类的标准对话框。
(1)MessageDialog(信息对话框):
(2)ConfirmDialog(确认对话框):提出问题,然后由用户自己来确认(按"Yes"或
No"按钮)
(3)InputDialog (输入文本对话框):
(4) OptionDialog(选择对话框):组合其它三个对话框类型。
3、这四个对话框可以采用showXXXDialog()来显示。如:
showConfirmDialog() 显示确认对话框、
showInputDialog() 显示输入文本对话框
showMessageDialog() 显示信息对话框。
showOptionDialog() 显示选择对话框。
(1)MessageDialog(信息对话框):
showMessageDialog
显示一个带有OK按钮的模态对话框。你能简单的指定显示的消息,图标,对话框标题。下面是几个使用
importjavax.swing.JOptionPane;
public class JOptionPaneDemo {
public static void main(String[] args) { JOptionPane.showMessageDialog(null, "显示一个MessageDialog(信息对
话框)", "信息对话框实例",
JOptionPane.WA RNING_MESSAGE);
System.exit(0);
}
}
JOptionPane是java提供的一个类。一般只是用里面的某几个静态方法,比如JOptionPane.showMessage***()什么什么的。表示在当前窗体显示一个消息提示框
这些方法是静态的,直接用类就可以调用了。
(2)ConfirmDialog(确认对话框):提出问题,然后由用户自己来确认(按"Yes"或"No"按钮)
importjavax.swing.JOptionPane;
public class JOptionPaneDemo{
public static void main(String[] args) {
JOptionPane.showConfirmDialog( null , "继续吗?是/否(Yes/No)" , "程序
等待", JOptionPane.YES_NO_OPTION ) ;
}
}
(3)InputDialog (输入文本对话框):
importjavax.swing.JOptionPane;
public class JOptionPaneDemo{
public static void main(String[] args) {
JOptionPane.showInputDialog("提示信息");
}
}
importjavax.swing.JOptionPane;
importjavax.swing.Icon;
classTestMessageDialog{
public static void main(String args[]){
Icon icon=new ImageIcon("color.gif");
Object[] possibilities = {"红色 ", "兰色", "绿色" };
JOptionPane.showInputDialog(null,"选择你喜欢的颜色","颜色选
择输入
",JOptionPane.QUESTION_MESSAGE,
icon,possibilities,pos sibilities[0]);
System.exit(0);
}
}
(4) OptionDialog:选择对话框。
该种对话框可以由用户自己来设置各个按钮的个数并返回用户点击各个按钮的序号(从0开始计数)
importjavax.swing.JOptionPane;
importjavax.swing.Icon;
public class JOptionPaneDemo{
public static void main(String[] args) {
Icon icon = new ImageIcon("h:\\security.png");
int confirmMessage;
Object[] possibleValues = {"是(Y)", "否(N)", "取消"}; Object inputMessage;
JOptionPane.showOptionDialog (null, "是否保存对“文档1”的修改?",
"Microsoft Office Word", JOptionPane.DEFAULT_OPTION,
JOptionPane.WARNING_MESSAGE, icon, possibleValues, possibleValues[0]);
System.exit(0);
}
}
https://www.wendangku.net/doc/e54114111.html,ng.Object 类,是所有类的根父类! 2.Object类仅有一个空参的构造器public Object(){ } 3.关于方法: ①equals(Object obj) public boolean equals(Object obj) { return (this == obj); } // == // 1.基本数据类型:根据基本数据类型的值判断是否相等。相等返回true,反之返回false // 注:两端数据类型可以不同,在不同的情况下,也可以返回true。 // 2.引用数据类型:比较引用类型变量的地址值是否相等。 //equals(): >①只能处理引用类型变量②在Object类,发现equals()仍然比较的两个引用变量的地址值是否相等 >像String 包装类File类Date类这些重写Object类的equals()方法,比较是两个对象的 //"实体内容"是否完全相同。 >若我们自定义一个类,希望比较两个对象的属性值都相同的情况下返回true的话,就需要重写Object类的 equals(Object obj)方法 ②toString()方法
当我们输出一个对象的引用时,会调用toString()方法。 1.public String toString() { return getClass().getName() + "@" + Integer.toHexString(hashCode()); } 当我们没有重写Object类的toString()方法时,打印的就是对象所在的类,以及对象实体在堆空间的位置 2.一般我们需要重写Object类的toString()方法,将此对象的各个属性值返回。 3.像String类、Date、File类、包装类都重写了toString()方法。 1. String类:不可变的字符序列(如:String str = "atguigu"; str += "javaEE") 1.关注于String常用的方法! 2.String类与基本数据类型、包装类;与字符数组、字节数组; * 1.字符串与基本数据类型、包装类之间转换 * ①字符串--->基本数据类型、包装类:调用相应的包装类的parseXxx(String str); * ①基本数据类型、包装类--->字符串:调用字符串的重载的valueOf()方法 *
j s p+s e r v l e t+m y s q l论坛项目实训总结 实训人:程路峰学号 通过为期10天的实训,我学习了很多关于java web的知识。在老师的正确指导下,顺利的完成了我的实训内容。在此,也有同学的帮助,在他们的帮助下我也受益匪浅。最终,能顺利完成实训的任务也很高兴。 在实训生活中,我了解开发项目的需求、设计、实现、确认以及维护等活动整个过程,让自己开始懂得 一点软件工程的知识点。 首先,了解需求分析的重要性,比如:需求分析就是分析软件用户的需求是什么.如果投入大量的人力,物力,财力,时间,开发出的软件却没人要,那所有的投入都是徒劳.如果费了很大的精力,开发一个软件,最后却不满足用户的要求,从而要重新开发过,这种返工是让人痛心疾首的.(相信大家都有体会)比如,用户需要一 个 for linux 的软件,而你在软件开发前期忽略了软件的运行环境,忘了向用户询问这个问题,而想当然 的认为是开发 for windows 的软件,当你千辛万苦地开发完成向用户提交时才发现出了问题,那时候你是 欲哭无泪了,恨不得找块豆腐一头撞死。所以,需求分析是成功的第一步,就是要全面地理解用户的各项要求,并准确地表达所接受的用户需求。 然后呢?确实客户的需求的以后我们要做什么呢,那当然是设计和分析。此阶段主要根据需求分析的 结果,对整个软件系统进行设计,如系统框架设计,数据库设计等等。软件设计一般分为总体设计和详细设计。好的软件设计将为软件程序编写打下良好的基础。 接下来是代码实现,此阶段是将网站项目设计的结果转换成计算机可运行的程序代码,我们这个项目为 4个模块,1.界面,2.逻辑层。3实现层。4.数据库及使用说明文档,分别为4个小组成员完成。这阶段我学到很多编程的思想,如: 分层思想、mvc、三大架构的整合、dao 的编写。 编号程序之后就是软件测试了,此时在软件设计完成后要经过严密的测试,以发现软件在整个设计过程 中存在的问题并加以纠正。由于时间有限,我们测试是简单的使用一下每一个功能。 在编写代码时,由于自己技术知识水平不广,常常遇到技术难题;还有自己没有良好的编程习惯,不注释,有时连自己也看懵了;编程的结构不好,维修和修改代码是很慢。这次实训让我意识到了自己做为计算 机软件工程专业的学生,要想在以后的职业中崭露头角,除了要有过硬的理论知识,健康的体魄外,还必须 具备良好的心理素质,使自己在以后的途中无论经历什么样的困难,都立于不败之地。"纸上得来终觉浅, 绝知此事要躬行!"在这短短的时间里,让我深深的感觉到自己在实际应用中所学专业知识的匮乏。让我真 真领悟到"学无止境"这句话的涵义。而所学的,都是课本上没有而对我们又非常实用的东西,这又给我们的实训增加了浓墨淡采的光辉。我懂得了实际生活中,专业知识是怎样应用与实践的。 在这次实训中,我不仅知道了职业生涯所需具备的专业知识,而且让我深深体会到一个团队中各成员合 作的重要性,要善于团队合作,善于利用别人的智慧,这才是大智慧。靠单一的力量是很难完成一个大项目的,在进行团队合作的时候,还要耐心听取每个成员的意见,使我们的组合达到更加完美。实训过程中,除 了要专业知识,包括人际交往,沟通方式及相关礼节方面的内容,对于团队开发来说,团结一致使我深有体会。团队的合作 注重沟通和信任,不能不屑于做小事,永远都要保持亲和诚信,把专业理论运用到具体实践中,不仅 加深我对理论的掌握和运用,还让我拥有了一次又一次难忘的开发经历,这也是实训最大的收获。 这次实训带给我太多的感触,它让我知道工作上的辛苦,事业途中的艰辛。让我知道了实际的工作并不像在学校学习那样轻松。让我学到了很多课堂上更本学不到的东西,仿佛自己一下子成熟了,懂得了做人做事的 道理,也懂得了学习的意义,时间的宝贵,人生的真谛。明白人世间一生不可能都是一帆风顺的,只要 勇敢去面对人生中的每个驿站!这让我清楚地感到了自己肩上的重任,看清了自己的人生方向,也让我认识 到了做软件应支持仔细认真的工作态度,要有一种平和的心态和不耻下问的精神,不管遇到什么事都要总代 表地去思考,多听别人的建议,不要太过急燥。
四川实习心得体会 计算本一班01210251y33 张焕炎 大四初始,我已经闻到了离别的气息,在这即将远离大学时代的时刻,才真正懂得回眸的意义。想想走过的路,想想现在的路,想想来时的路,不知道未来能否成功,既然选择了远方,就注定要风雨兼程! 在四川短暂的一个月里,我从基础入手,强化了java语言编程,学习了java 语言编程和编程概念与技巧。时间很短,但成长很快,无论是理论知识还是动手实践能力都得到了大幅度的提高。而将理论和实践相结合,相互促进,相互补充,使得学习更加透彻。通过用不同方法实现同一个项目,不断深入,层层推进,学以致用! 实践过程中,开发一个简单的小项目,包括如何将Java的思想运用到实际系统的详细设计之中。首先要将系统要实现的功能分为几大模块,然后每个分别完成,在此过程中使我加深了对Java的理解,以及如何进行工作的划分,与此同时熟练掌握Java语言的编辑,编译,调试程序,并将算法转变为程序实现。我将设计过程分为逻辑设计和详细设计两个步骤实现.逻辑设计指的是,对问题描述中涉及的对象定义相应的数据类型,定义主程序模块和各抽象数据类型及其代码;详细设计则为定义相应的模块的实现并写出各模块的实现代码。然后在连接数据库,编码测试,最后确定完成。 通过这次实践,使我灵活应用所学知识,独立完成问题分析,结合Java理论知识,编写程序解决指定问题。初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能;提高综合运用所学的理论知识和方法独立分析和解决问题的能力。同时在这次实践中,培养了独立思考、动手操作的能力,在各种其它能力上也都有了提高。然而,在这次实践中,我觉得一个人完成一个项目是多么的艰难,在一些大型的项目中,团队合作是多么重要。尽管这次只是一个小项目,却也要耗费大量的精力。我学习了知识,也培养了实践能力,让我知道遇到一个问题,如何去寻找思路,如何去解决问题,最终完成整个事情。学习的过程中不可避免的遇到问题,这些问题有的只是一个符号错了,一个括号少了,这类的问题在他的文档,或者一般的网站上就能够找到,尤其是初学者的问题,不会是很难的问题,在你之前已经无数人问过了,不要害怕提问,但
总结一:javaweb课程总结刚开始学的时候,感觉这两门课程好高大上的样子,因为自从学软件工程这个专业以来,一直都是学的理论性、框架性的东西,就没有接触到编程的实质性的部分,终于开始学编程了,感觉蛮兴奋的,也是精神饱满,信心十足,怀着一腔热血来听课。 由于JAVAWEB和JSP两门课是同时上的,而且每次都是一整上午,上课时间很长,老师一直有条不紊的讲着,虽然时间很长,但是每当大家上完课,心中都是有一种充实的感觉,大家都觉得有所收获,所以也就不曾觉得累了。 JAVAWEB这门课让我认识了以前见所未见闻所未闻的专业术语,Web应用程序的概述。我从中了解到Web应用程序的三层体系结构:表示层、业务层、数据存取层。从而想到了学数据库设计时的数据库设计三大范式,它们同是叙述在编写代码时应做的规划和应遵循的规则,这种规划在以后的学习中时有出现,说明编程并不是一味地进行循环判断、死记硬背,而需要在技术上有所加强、在效率上有所提高。做任何事都是如此,事先必须有目标、有计划,有统筹,这样执行时才不会盲目,才不会事倍功半。学习编程对综合能力都是一种培养。 接下来是JSP知识。要学JSP,就必须会HTML,如果HTML学不通,这对以后的学习都是一个瓶颈。基础一定要打扎实,吃透,否则上层建筑的建起就不会很顺利甚至没法起步。然后是JavaBean。以下是个人对JavaBean的一点学习体会。JavaBean里有set()和get()方法,用这些方法能很容易地传值,逻辑上更标准,代码看起来也更规范。但set()和get()方法只是用来对属性进行操作的,所以如果是进行复杂的逻辑或对数据库进行操作等,那么就不要写成set()和get()方法,只用一个有返回值的方法就足以。这样直观方便,且符合规范。总之,set()和get()方法不要没有效率地滥定义。 接着是Servlet。Servlet是一个用Java编写的应用程序,在服务器上运行,用来处理请求和响应,也可以单独做为一个Web页面。然后讲的是标签,包括自定义标签和JSP标准标签库。用一般的Java代码都几乎能实现它们的功能。它们的好处是提高了代码的重用性。 我们需要配置的坏境有JDK,Tomcat,还要用到Myeclips这一基础的编程工具。在学习JSP之前,由于没有网页编程的基础,便学习了HTML这种文本标记语言,自己试着去做简单的静态网站。后来学做JSP动态网站时,就涉及到了多方面的知识,JSP内部对象及内部对象所涉及的方法,JSP与数据库连接,如何去引用数据库。这门课更是巩固了JAVA 这一基础编程语言,要求对JAVA掌握的要透彻,每门语言要学扎实,深入理解,都要花费很大的功夫,不是容易的事情。 Jsp与servlet有一定的区别,Servlet可以看作是HTML的Java代码,而JSP可看作是包含Java代码的HTML。共同点:JSP和Servlet实际上是一回事。JSP页面最终要转换成Servlet,并进行编译,在请求期间执行的实际上是编译后的Servlet。因此,JSP页面不过是编写Servlet的另一种方式。各自应用的范围:Servlet比较适合于做处理任务,如做业务逻辑;JSP适合于表示任务,如网页制作,生成动态网页。 对JAVAWEB和JSP课程的知识就简单介绍到这里,本学期的这两门课程让我对软件工程这门课有了一个全新的认识,我真切的学到了能用的东西,大学里的很多课是浪费时间,而
Created by AIwen on 2017/5/14. java是面向对象的程序设计语言;类可被认为是一种自定义的数据类型,可以使用类来定义变量,所有使用类定义的变量都是引用变量,它们将会引用到类的对象。类用于描述客观世界里某一类对象的共同特征,而对象则是类的具体存在,java程序使用类的构造器来创建该类的对象。 java也支持面向对象的三大特征:封装、继承、和多态。java提供了private、protected、和public三个访问控制修饰符来实现良好的封装,提供了extends关键字让子类继承父类,子类继承父类就可以继承到父类的成员变量和和方法,如果访问控制允许,子类实例可以直接调用父类里定义的方法。继承是实现类复用的重要手段。使用继承关系来实现复用时,子类对象可以直接赋给父类变量,这个变量具有多态性。 面向对象的程序设计过程中有两个重要的概念:类(Class)和对象(object,也被称为实例,instance)。类可以包含三种最常见的成员:构造器、成员变量、和方法。 构造器用于构造该类的实例,java语言通过new关键字类调用构造器,从而返回该类的实例。构造器是一个类创建对象的根本途径,如果一个类没有构造器,这个类通常无法创建实例。因此java语言提供了一个功能:如果程序员没有为一个类编写构造器,则系统会为该类提供一个默认的构造器,这个构造器总是没有参数的。一旦程序员为一个类提供了构造器,系统将不再为该类提供构造器。 构造器用于对类实例进行初始化操作,构造器支持重载,如果多个重载的构造器里包含了相同的初始化代码,则可以把这些初始化代码放置在普通初始化块里完成,初始化块总在构造器执行之前被调用。静态初始化块代码用于初始化类,在类初始化阶段被执行。如果继承树里某一个类需要被初始化时,系统将会同时初始化该类的所有父类。 构造器修饰符:可以是public、protected、private其中之一,或者省略构造器名:构造器名必须和类名相同。 注意:构造器既不能定义返回值类型,也不能使用void声明构造器没有返回值。如果为构造器定义了返回值类型,或使用void声明构造器没有返回值,编译时不会出错,但java会把这个所谓的构造器当成方法来处理——它就不再是构造器。 实际上类的构造器是有返回值的,当使用new关键字来调用构造器时,构造器返回该类的实例,可以把这个类的实例当成构造器的返回值。因此构造器的返回值类型总是当前类,无须定义返回值类型。不要在构造器里显式的使用return来返回当前类的对象,因为构造器的返回值是隐式的。 java类名必须是由一个或多个有意义的单词连缀而成的,每个单词首字母大写,其他字母全部小写,单词与单词之间不要使用任何分隔符。 成员变量: 成员变量的修饰符:public、protected、private、static、final前三个只能出现一个再和后面的修饰符组合起来修饰成员变量,也可省略。 成员变量:由一个或者多个有意义的单词连缀而成,第一个单词首字母小写,后面每个单词首字母大写,其他字母全部小写,单词与单词之间不要使用任何分隔符。 类型:可以是java语言允许的任何数据类型,包括基本类型和引用类型。 成员方法: 方法修饰符:public、protected、private、static、final、abstract,前三个只能出现一个,static和final最多只能出现其中的一个,和abstract组合起来使用。也可省略。 返回值类型:可以是java语言的允许的任何数据类型,包括基本类型和引用类型。 方法名:和成员变量的方法命名规则相同,通常建议方法名以英文动词开头。 方法体里多条可执行语句之间有严格的执行顺序,排在方法体前面的语句总先执行,排在方法体后面的语句总是后执行。 static是一个特殊的关键字,它可用于修饰方法、成员变量等成员。static修饰的成员表明它属于这个类本身,而
javaweb实训总结 实训已经进行两周多了,还有一周就要正式结束了,突然发 现自己似乎又重蹈覆辙了,再一次一次的不经意中和某些人 的就距离却是越来越来大,总是想偷一下懒,总是想着马马 虎虎过去算了,没有那么精打细算过。结果不经意有些人人 开始脱颖而出,有些人开始展露锋芒,而我也开始黯淡下去。我是想好好学学别人的,结果画虎不成反类犬。原来我也是 不轻易臣服的人,我即便不去领导他们也没有人可以领导我。给我分的实训小组连个能交流的人都没有,身边一个研究生 只会不停地打击我,我只能不知所谓的笑笑。这个项目小组 真让我郁闷,组长谁也领导不了,组长不是我,我也懒得管,乐得清闲。 这两周究竟自己学到了什么,确实在脑海中总还是模糊不清的,J2SE,J2EE,HTML,JScrip特效,CSS,JAVAweb,Servlet,JDBC,数据库快速建模,数据池,单态模式,JFreechart,俄罗斯方块项目,人力资源项目,购物网项目,这都算是过 来了,可是心里却不是很有谱自己心里七上八下的,自知学 的只有四成火候,又不断地被人打击打击么还没有可以交流,心中这两天的抑郁让我难以忍受,总是喉咙里很堵,心里着 实闷得难受。回去想跟室友聊聊,他只说了一句,寂寞才说爱,活该。我就更郁闷了,我一直对自己说我只是活着我只 是深爱着。明天就要进行最后一周实训了,各项目都到了结
束完善阶段,也是所学的整理复习阶段。看着周围有人夸夸 其谈,有人韬光养晦,自己心里也很没底,项目结项之后还 有个考核我都十分担忧。其实这各阶段我更担忧的是我发现 自己的学力已经下降,可能是长时间习惯不听老师讲课,只 靠自学和考前突击。现在听讲师讲课总是听着听着就跑神了,听着听着就觉得没意思了,总想自己看书自己单干,可真的 有时间的时候我却提不起精神去单搞,总是事倍功半花了三 四个小时有时候只是把讲师四十分钟的搞完。然后精疲力竭 的倒下。 拥有太多的东西总是不会去珍惜的。我懒惰的恶习让我异常 痛苦。我现在唯一拥有的财富就剩下我的青春了,我发誓我 会努力努力再努力,捍卫自己的青春,我说过我会成为伟人的。以后我会给自己出ail邮件开发详解》的作者之一方**。现在列举出这些东西并实现技术虽然很容易,但是在当时学 习的时候可是吃了不少苦,因为开始不懂啊,就拿人家写好 的代码,一个显示屏幕分成两块,开始手动copy...虽然写出了功能,但是没过多久就会忘记,即使3个月不忘记,6个月也会忘,因为它不是自己的东西嘛。这些问题是在我第 二次写东西的时候发现的,因为要对自己负责嘛。所以自己 很难受。于是开始找方老师想办法,他给我讲解了一遍这些 技术的实现思路并操做演示给我看。在他讲解完,我是茅塞 顿开。自己开始继续写,可是一写就发现还是不会,又开始
java实验心得体会精选 java实验心得体会一:软件专业java实习心得 大学生活临近了尾声,这短短的三年,却是我的人生中弥足珍贵 的时光。在这三年里,我从一个莽撞少年成长为一名合格的大学生, 用脱胎换骨来形容并不为过。总结过去可以拨开时间的迷雾,清晰的 回首所走过的路,从而为将来的人生旅程准备一些经验和教训。 大学生活主线是学习。大学学习是迥然不同于以往的一种新形式,它赋予了学习者更大的自主性和更广阔的思维空间,同时也对学习者 提出了更高的要求。在这种半开放式的教学模式下,要求学习者必须 有明确的学习目的,有更强的选择辨别能力和更强的自学能力。对于 这个方面,我应该感谢大学这四年的学习生涯,在这期间的历次挫折 与成功,使我真正知道了怎样进行自我学习,怎样有选择有目的的学习,随之而来的是自己自学能力和学习效率的提高。而学习之外的课 外科技活动的参与,同时也是对所学知识的一种巩固和加强,它不仅 提高了我的动手能力,拓宽了我的知识面,而且在不断的探索过程中,也促使自己学习更多更新的东西,这更进一步丰富了自己的理论知识。 通过此次实习,让我学到了很多课堂上更本学不到的东西,仿佛 自己一下子成熟了,懂得了做人做事的道理,也懂得了学习的意义, 时间的宝贵,人生的真谛。明白人世间一生不可能都是一帆风顺的, 只要勇敢去面对人生中的每个驿站!这让我清楚地感到了自己肩上的 重任,看清了自己的人生方向,也让我认识到了文秘工作应支持仔细 认真的工作态度,要有一种平和的心态和不耻下问的精神,不管遇到 什么事都要总代表地去思考,多听别人的建议,不要太过急燥,要对 自己所做事去负责,不要轻易的去承诺,承诺了就要努力去兑现。单 位也培养了我的实际动手能力,增加了实际的操作经验,对实际的文 秘工作的有了一个新的开始,更好地为我们今后的工作积累经验。
学习javaweb开发要学习的技术和框架总结: 前言:当初想学习javaweb开发的时候,希望能够全方面地学习(这样找工作时就胸有成足了)。但是对这个根本不理解,又不认识从事这方面的熟人,所以学习起来无从下手。经过了一年的‘死’学习,从网上,从书本,从视频里面深入了解了java。想从事java的朋友,只要把这些技术全学会了,哪就业肯定没有问题了。 前端技术: HTML, CSS, JA V ASCRIPT, JQUERY, AJAX HTML “超文本”就是指页面内可以包含图片、链接,甚至音乐、程序等非文字元素。 超文本标记语言的结构包括“头”部分(外语:Head)、和“主体”部分(外语:Body),其中“头”部提供关于网页的信息,“主体”部分提供网页的具体内容。 CSS 级联样式表是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。 JavaScript JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能。 jQuery jQuery是一个兼容多浏览器的javascript库,核心理念是write less,do more(写得更少,做得更多)。jQuery在2006年1月由美国人John Resig在纽约的barcamp发布,吸引了来自世界各地的众多JavaScript高手加入,由Dave Methvin率领团队进行开发。如今,jQuery已经成为最流行的javascript库,在世界前10000个访问最多的网站中,有超过55%在使用jQuery。
目录 第一章 Java入门 (2) 第二章 Java基础 (5) 第三章条件转移 (16) 第四章循环语句 (22) 第五章方法 (28) 第六章数组 (35) 第七章面向对象 (44) 第八章异常 (65)
第一章Java入门 知识点汇总 1、JAVA 三大体系 ?Java SE:(J2SE,Java2 Platform Standard Edition,标准版),三个平台中最核心 的部分,包含Java最核心的类库。 ?JavaEE:(J2EE,Java 2 Platform, Enterprise Edition,企业版),开发、装 配、部署企业级应用,包含Servlet、JSP、 JavaBean、JDBC、EJB、Web Service等。 ?Java ME:(J2ME,Java 2 Platform Micro Edition,微型版),用于小型电子设备 上的软件开发。 2、JDK,JRE,JVM的作用及关系 作用 ★JVM:保证Java语言跨平台 ★JRE:Java程序的运行环境 ★JDK:Java程序的开发环境 关系 ★JDK:JRE+工具 ★JRE:JVM+类库 3、JDK环境变量配置 ?path环境变量:存放可执行文件的存 放路径,路径之间用逗号隔开 ?classpath环境变量:类的运行路径, JVM在运行时通过classpath加载需要 的类 4、重点掌握两个程序 ?javac.exe:Java编译器工具,可以将编 写好的Java文件(.java)编译成Java 字节码文件(.class); ?java.exe:Java运行工具,启动Java虚 拟机进程,运行编译器生成的字节码 文件(.class) 5、一切程序运行的入口 public static void main(String args []){ System.out.println(“Hello World!”); } 课堂笔记
jsp+servlet+mysql 论坛项目实训总结 实训人:程路峰学号: 11103303 通过为期 10 天的实训,我学习了很多关于 java web 的知识。在老师的正确指导下,顺利的完成了我的实训内容。在此,也有同学的帮助,在他们的帮助下我也受益匪浅。最终,能顺利完成实训的任务也很高兴。 在实训生活中,我了解开发项目的需求、设计、实现、确认以及维护等活动整个过程,让自己开始懂得一点软件工程的知识点。 首先,了解需求分析的重要性,比如:需求分析就是分析软件用户的需求是什么.如果投入大量的人力,物力,财力,时间,开发出的软件却没人要,那所有的投入都是徒劳.如果费了很大的精力,开发一个软件,最后却不满足用户的要求, 从而要重新开发过,这种返工是让人痛心疾首的.(相信大家都有体会)比如,用户需要一个 for linux 的软件,而你在软件开发前期忽略了软件的运行环境,忘了向用户询问这个问题,而想当然的认为是开发 for windows 的软件,当你千辛万苦地开发完成向用户提交时才发现出了问题,那时候你是欲哭无泪了,恨不得找块豆腐一头撞死。所以,需求分析是成功的第一步,就是要全面地理解用户的各项要求,并准确地表达所接受的用户需求。 然后呢?确实客户的需求的以后我们要做什么呢,那当然是设计和分析。此阶段主要根据需求分析的结果,对整个软件系统进行设计,如系统框架设计,数据库设计等等。软件设计一般分为总体设计和详细设计。好的软件设计将为软件程序编写打下良好的基础。 接下来是代码实现,此阶段是将网站项目设计的结果转换成计算机可运行的程序代码,我们这个项目为 4 个模块,1.界面,2.逻辑层。3 实现层。4.数据库及使用说明文档,分别为4 个小组成员完成。这阶段我学到很多编程的思想,如: 分层思想、mvc、三大架构的整合、dao 的编写。 编号程序之后就是软件测试了,此时在软件设计完成后要经过严密的测试,以发现软件在整个设计过程中存在的问题并加以纠正。由于时间有限,我们测试是简单的使用一下每一个功能。 在编写代码时,由于自己技术知识水平不广,常常遇到技术难题;还有自己没有良好的编程习惯,不注释,有时连自己也看懵了;编程的结构不好,维修和修改代码是很慢。这次实训让我意识到了自己做为计算机软件工程专业的学生,要想在以后的职业中崭露头角,除了要有过硬的理论知识,健康的体魄外,还必须具备良好的心理素质,使自己在以后的途中无论经历什么样的困难,都立于不败之地。“纸上得来终觉浅,绝知此事要躬行!”在这短短的时间里,让我深深的感觉到自己在实际应用中所学专业知识的匮乏。让我真真领悟到“学无止境” 这句话的涵义。而所学的,都是课本上没有而对我们又非常实用的东西,这又给我们的实训增加了浓墨淡采的光辉。我懂得了实际生活中,专业知识是怎样应用与实践的。 在这次实训中,我不仅知道了职业生涯所需具备的专业知识,而且让我深深体会到一个团队中各成员合作的重要性,要善于团队合作,善于利用别人的智慧,这才是大智慧。靠单一的力量是很难完成一个大项目的,在进行团队合作的时候,还要耐心听取每个成员的意见,使我们的组合达到更加完美。实训过程中,除了要专业知识,包括人际交往,沟通方式及相关礼节方面的内容,对于团队开发来说,团结一致使我深有体会。团队的合作 注重沟通和信任,不能不屑于做小事,永远都要保持亲和诚信,把专业理论运用到具体实践中,不仅加深我对理论的掌握和运用,还让我拥有了一次又一次难忘的开发经历,这也是实训最大的收获。
javaweb第一天 1、junit测试框架 Arrsert.assertEquals(long execpted,long actual) 测试两个long类型的值execpted 与actual 是否相等,相等返回true,否则返回false; 2、泛型类型的转换 1、泛型的实际类型参数不具备继承关系、 2、泛型的作用: jdk5.0之前,将对象保存到集合中,对象会失去他自己特有的信息,在从集合中取出该集合时,程序员必须手动的强制类型转换,这样不免在给程序带来安全性的问题,但是泛型的出现使得程序员在编码时可以限制集合中的处理类型,从而把运行时的可能发生的问题,转变为编译时的问题,以此提高程序的可读性和安全性。 结论:通过限制集合中的处理类型,使得程序更具可读性和安全性 3、自定义泛型方法 public
3、枚举类 1、java中声明的枚举类,都是https://www.wendangku.net/doc/e54114111.html,ng.Enum的实例 2、枚举类中的构造方法默认只能是private的, 为什么枚举类中的构造方法默认只能是private呢? 答:因为使用枚举给变量赋值时,他必须是规定的范围的枚举值,既然是规定范围的,那么就不能让外界new 出一个对象。 3、枚举类中声明的每一个枚举值都是枚举类的一个实例对象
4、枚举中常用的方法: 1、name() 获得枚举对象的名字 2、ordinal() 获得枚举的下标 3、valueof (String name) 将一字符串转变成枚举 4、values() 返回枚举数组,用于遍历枚举数组 4、反射 1、反射就是将java的各个成分映射成java类。使用反射需要使用到以下一个API:Class 、onstructor、Field、Method 2、使用发射的要领就是需要先得到类的字节码对象,得到了字节码对象就得到了类身上的所有的一切,有了字节码,利用反射就可以操作类,给类的成员变量赋值,调用类的方法等。 3、使用反射得到泛型的实际参数类型,比如:List
1. 基本数据类型 整形: byte 1 个字节 short 2 个字节 int 4个字节 long 8个字节 字符: char 2个字节 浮点数: float 4个字节 double 8个字节 布尔: boolean 1个字节 2.java 7 新增二进制整数 以0b或者0B开头 3.java中字符时16位的Unicode编码方式,格式是'\uXXXX',其中xxxx代表一个十六进制整数 4.java中规定了正无穷大、负无穷大和零 正无穷大= 一个正数除以0 负无穷大= 一个负数除以零 0.0 除以0.0 或者对一个负数开方得到一个非数 5. 在java中布尔类型只能是true和false 6. 在java中没有多维数组 动力节点
看似像C语言中的多维数组不是真正的数组,比如 a[3][4] , a[0] a[1] a[2] 是真实存在的,装的是地址,和 c语言中动态分配为的数组一样 int [][] b = new int[3][4] 7. Java中带包的编译方法 javac -d . Hello.java 会在当前目录下生成目录树 运行 java 包名字.类名字 8. Java多态中的对象的filed 不具有多态性,如父类对象 = new 子类(),对象.field 是调用的父类的,即使子类中覆盖了该字段。 9. instanceof 运算符 格式:引用变量名 instanceof 类名(或者接口)他用于判断前面的对象是否是后面对象的类,子类、实 现类的实例,是返回true,否者返回false 10. Java 中基本数据类型和对应封装类之间的转化 int a = 1; Integer A = new Integer(a); a = A.intValue(); 其他的类型也是这样的。 11.单例(singleton)类例子 复制代码代码如下: class Singleton { private static Singleton instance; private Singleton(){} public static Singleton getInstance() { 动力节点
javaweb学习心得范文 时间过得真快,转眼间,在××实训基地短短20天的实训生活 已悄然过去几天了,然而实训的过程还历历在目。 经过几天的JAVAwebOA办公系统开发的实训,我对JAVA软件开 发平台有了更深一步的了解与深入,对MyEclipse认识与使用也有 了大大的提高。开发这个OA办公系统用到知识几乎都是以前课本上 所没有学到这,很多都是现学现卖,所以用起来遇到很多的阻力。 我做的模块是考勤的请假管理,要用到DAO,和MVC设计思想模式。听课的时候不太明白这是怎样的一种设计模式,随着慢慢的深入开发,通过解决各种问题,体会到了这两个设计模式的一些要领。虽 然后面和数据库连接时成功,但是却没有在数据库看到应该增加进 去的内容,调试了很久还是没有成功,由于时间问题最后只好作罢。但是我有决心会去弄明白它。 这次实训也让我深刻了解到,不管在工作中还是在生活中要和老师,同学保持良好的关系是很重要的。做事首先要学做人,要明白 做人的道理,如何与人相处是现代社会的做人的一个最基本的问题。对于自己这样一个即将步入社会的人来说,需要学习的东西很多, 他们就是最好的老师,正所谓“三人行,必有我师”,我们可以向 他们学习很多知识、道理。突然想起鲁迅先生的一句话:这里本来 没有路,只是走的人多了,也便成了路。生活的路呢?生活的路也是 人走出来的,每个人一生总要去很多陌生的地方,然后熟悉,而接 着又要启程去另一个陌生的地方。在不久就要踏上人生另一旅程的 时候,有时不免会感到有些茫然,感到无助,但生活的路谁都无法 预设,只能一步一步摸索,但只要方向正确,不要走入歧途,走哪 条路都走向光明。 此次只实训了短短的三周。虽说时间很短,但其中的每一天都使我收获很大、受益匪浅,它不但极大地加深了我对一些理论知识的 理解,不仅使我在理论上对Java有了全新的认识,在实践能力上也
北京联合大学信息学院 “面向对象程序设计”课 程上机实验报告 题目: java上机实验心得体会 姓名(学号):专业:计算机科学与技术 编制时间: 2012年12月19日 版本:指导教师:北京联合大学-信息学院编制 实验1 熟悉java运行环境 实验目的:熟悉jdk环境和操作,编写简单的java应用程序。 心得体会:在该实验中,我碰到的问题是jdk环境变量的设置。解决方法是通过查阅资料书和网上搜索相关解决方法及同学的有力帮助。 实验2 选择语句练习 实验目的:正确理解并能够熟练操作和使用java的if和switch语句。 心得体会:我个人感觉有了c的编程基础,if和switch这些简单的流程控制语句运用起来比较轻松,实现简单的逻辑运算也跟c非常相近,所以上手比较快。但是在这次程序中,首次涉及到了java程序的数据输入,与c区别很大。但经过老师的讲解和查阅相关资料,基本明白相关的使用规则和注意事项。在第二个小题中还涉及到了charat()方法,经查阅jdk 文档,知道charat()方法返回一个位于提供给它的参数索引处的字符,如: (0)检索str中的第一个字符,()-1)检索最后一个字符。我运用此方法解决了比较字符串间首字母异同的问题。 实验3 迭代练习 实验4 方法的实现练习 实验目的:声明、定义和调用方法,理解实参和形参的含义。 心得体会:在该实验中,我掌握如何写方法、调用方法,并掌握如何向方法中传递信息和从方法中返回信息。方法声明为非void(构造方法除外)则需要用return语句返回一个相应类型的返回值。 实验5 简单类型数组练习 实验目的:学习创建简单类型的数组,并能用循环语句处理数组。 心得体会:通过该实验,我学会了如何让建立简单类型的数组,并掌握了将数组作为方法的传入参数和返回值。在该实验中,遇到的问题主要是如何将一个连续的多位数在存入数组时,每个数组元素只对应改多位数的一个组成数。我解决的方法如下: for(i=0; i<6; i++){ n[i] = aa%10; etname()是获得正在执行的线程的名字,().getid()是thread类中返回该线程的标识符的方法,().getpriority()是thread类中返回线程的优先级的方法。 实验12 i/o及文件处理 实验目的:掌握并使用java中的i/o和文件。 心得体会:对于该实验,由于比较难,只是基本掌握了文件读写的方法和规则,还有待17周java实训时继续攻坚克难。 结语:在这一系列的实验中,我基本掌握了java的编程规则、知识要点和一些小技巧,特别是对面向对象的编程思想和风格有了进一步的认识和体会。同时,因正确的编出程序而带来的成就感让我对编程更加感兴趣。对于在这些实验过程中,请教老师、同学互助、查阅资料等基本的学习方式,使我更加领悟到集体和团队的力量,也树立了敢于攻坚的信心。篇二:java实训心得 java实训心得 在上学期的最后一周和本学期的第一周,我和同组的学员在学校机房进行了java暑期实训,现在已经结束了。 回首上学期的java学习,重点还是在学习概念等一些常识性的东西,application应用程序和applet小程序,它的开发工具、数据类型、变量、接口、输入输出流等。学会分析异
第一章Web开发基础知识(简单描述)表单(续) 表单元素