logo资料库

Java实习报告.doc

第1页 / 共13页
第2页 / 共13页
第3页 / 共13页
第4页 / 共13页
第5页 / 共13页
第6页 / 共13页
第7页 / 共13页
第8页 / 共13页
资料共13页,剩余部分请下载后查看
@@@@@@@@@@@ 学 院 生 产 实 习 报 告 计算机科学与技术 专 班 学 姓 业 级 号 名 完成日期
实习单位 江苏无锡 NIIT 外包服务 公司 实习日期 2014.10.19-2014.10.31 实习岗位 实习生 实习带队 教师 赵向利、刁文广、 丁国强 实习单位基本情况 无锡 NIIT--NIIT(印度国家信息技术学院)是全球第二大的学习解决方案提供 商,也是亚洲唯一一家荣登 IDC 全球前 15 位 IT 培训机构榜的机构,向全球著名 企业如 Microsoft、INTEL、 TOYOTA、XEROX 等提供知识解决方案服务,拥有 50 万注册学生以及 38 个国家超过 4 百万的毕业生。1997 年 NIIT 正式进入中国,成 为投资中国的首家印度 IT 企业,目前已与中国 129 所院校建立合作伙伴关系,并 在大学校园里通过“NIIT Inside”模式提供业界知名的 IT 培训计划。 目前 NIIT(中国)服务外包实训基地二期工程,拥有三栋独立的实训大楼, 实训场地面积约 30000 多平方米,设有市场部、教学部(教学部一、教学部二、 教学部三)、高校合作部、就业安置部等七个部门。每层均拥有阶梯教室(均为多 媒体教室)、休息室、项目讨论室等,且设有普尔文考试中心,教学用计算机近万 台,全部配备 HP 品牌机;学校培训讲师主要由 NIIT 直接从印度总部派遣印籍专 家与本地具有丰富开发经验的项目经理担任,确保培训质量,学校目前拥有 Dhiren、Afzal Faizi 等印籍专家、金牌讲师及 30 多位项目经理级软件培训讲师。 NIIT 对教学质量严格把关,软件服务外包培训教材,教学大纳、课件、案例等全 部由 NIIT 印度总部统一提供,并根据行业发展情况对软件课程体系不断更新,培 训讲师都是经 NIIT 严格选拔,均要求拥有五年以上大型软件企业项目开发经验。 NIIT 目前已与福瑞博德、浪潮世科、大展信息、软通动力、华夏计算机、冠 华时代、日本 BASE、睿泰科技、中科惠软、海辉软件等众多知名服务外包企业, 结成战略培训合作联盟,根据外包企业实际技术需求,为企业进行定制人才培训。 培训内容涉及包括 C++、JAVA SE、JAVA EE、JAVA ME、.NET、ORACLE 等软件技术 与三级日语。
授课人姓名 @@@@ 日期 2@@@@@@@ 授课与实习内容 一、 授课内容 第一天: 一、第一个小程序 package day01; public class HelloWorld{ public static void main(String[] args){ System.out.println("HelloWorld!"); } } 二、安装配置 1、安装 jdk 2、配置环境变量 path:C:\Program Files\Java\jdk1.6.0_10\bin; 三、发展 sun:java IBM:eclipse oracle:jdk1.8 正式版 四、Java 的数据类型 1、基本数据类型 整形:byte,short,int(默认),long 浮点型:float,double(默认) 字符型:char 布尔型:boolean 2、引用类型 八种基本类型的包装类: 整形:Byte,Short,Integer,Long 浮点型:Float,Double 字符型:Character 布尔型:Boolean 第二天: 一、流程控制语句 1、顺序 2、分支 if else 3、循环 for, while ,dowhile , switch case 二、运算符 数学运算符:+-*/ %
逻辑运算符:| & ! ||(短目或) 比较运算符: > < >= <= == != 位运算符:>> << 自增自减:++ -- ^ | & >>> && 三、方法 function public static void main(String[] args){ } public:访问修饰符 static:修饰符(静态的只能调用静态的) void:返回值类型,数据类型(必须要有 return)|void main:方法名 (String[] args):参数列表 {}:方法体 四、面向对象 oop 一切皆对象。 面向对象的特征:(抽象),封装,继承,多态 Object Class class Person class Person{ String name; int age; char sex; String email; String phone; public void eat(){ //.... } } 对象的属性自动初始化: int...:0 double:0.0 char:'\u0000' boolean:false; String:null public User(){} public User(int id,String name){
this.id = id; this.name = name; } public class User extends Person{ //子类继承父类 的可见的属性和方法 } 属性是静态绑定的 方法是动态绑定的(多态) Person p = new User(); //父类对象引用子类实例 p.eat();//方法是动态绑定的(多态) String job = p.job;//属性是静态绑定的 如果能够明确的知道父类引用的是哪个子类,则可以强转父类对象。 Person p = new User(); User u = (User)p; 重载:方法名(必须一致),参数列表(必须不相同) public int add(){return 0;} public int add(int a){ return a+a;} 与 public int add(int b){ return b+b;} 相同 public int add(int a,int b){return a+b;} 重写:子类覆盖父类的方法 第三天: 一、复习自定义一个实体类 一般步骤: 1、定义私有的属性 2、提供属性的 public 修饰的 getter,setter 方法 3、提供常用的构造方法(无参构造器,全参构造器,常用构造器); 4、覆盖 Object 的 toString(),equals(),hashcode()方法等 5、实现序列化接口 [说明]:toString():主要用在直接测试期间直接输出对象的时候。程序员可以自 定义输出内容,无规定格式。 equals():主要用来对象比较的时候。一般分为以下 3 个判断: 非空检查:if(obj == null) return false; ==相等:if(this == obj) return true; 类型相同:if(obj instanceof User) User u = (User)obj; return id == u.getId();//基本类型 return name.equals(u.getName());//引用类型
Map hashcode():主要用来表示同一个对象拥有同一个 hashcode 值,同一个 hashcode 值是同一个对象。 序列化接口:只是一个标识性接口,主要作用是告诉虚拟机该 对象可以被序列化,目的是为了在信息传输过程中减少信息的丢失等。 二、练习 首先了解论坛的大体结构,分析论坛的框架,得出对应的实体类。并且分析出每个 实体类的常见属性,如: 用户:User 主键属性 uid,用户 email,用户 pwd,经验 exp,权限等级 lv 等 版块:Section 主键属性 sid,版块名称 name,版主信息 User 等 主题:Theme 主键属性 tid,主题名称 name,发起人信息 User (回帖)所属楼主贴 id 等。 三、集合 collection:set,list list->ArrayList,LinkedList Arrays.... List list = new ArrayList(); list.size():获得集合的元素个数 list.add(obj):向集合中添加元素 list.get(index):获得集合中指定下标的元素 Collections.sort(list):对集合中的元素按照自然排序/字典排序的方式排序。 Collections.shuffle(list):将集合中的元素打乱 String str = "zs:123,ls:123,ww:123"; str.split(","):按照","切割字符串,返回一个字符串数组 str.indexOf("z"):从前向后查找指定子串的元素的下标 str.lastIndexOf("z"):从后向前查找指定子串的元素的下标 str.substring(1,5):切割指定字符串,下标从 1 开始到 5 结束,包含 1,不包含 5. Array:int[] arri = new int[5]; arri[0] = 1;//将 1 赋值给 arri 数组的第一个元素 int i = arri[0];//取出数组 arri 数组的第一个元素赋值给 i int length = arri.length;//获得数组元素的个数 Arrays.sort(arri);//数组排序 Arrays.toString(arri);//将数组的元素按照字符串的格式输出。 第四天: 熟悉数据库的一些基本操作: select * from user; insert into user values(1,'zs','123'); insert into user(name,pwd) values('ls','123'); insert into user(pwd,name) values('123','ww'); update user set id = 1 ; update user set id = 2 where name='ww';
values('wf1@th.cn','123'); delete from user where id = 2; drop table user; User: uid,email,pwd,name,exp,lv,coin,regdate create table user( uid int primary key auto_increment, email varchar(30) pwd varchar(20) not null, not null unique, name varchar(20), exp int default 0, lv int default 1, coin int default 8, regdate datetime ); //添加一列 alter table user add column name varchar(20); //修改指定的列的类型等 alter table user modify type int default 0; insert into user values(1,'zs@th.cn','123','zs',12,1,0,'2014-10-23 09:44:44'); insert into user(email,pwd) values('ww@th.cn','123'); primary key:主键-->唯一的,不为空的。 auto_increment:自增长 not null:不为空的 unique:唯一的 default:默认值 int,bigint:整数 double(7,2):小数,长度 7 位,保留 2 位小数。 char,varchar:字符串类型,用单引号引起来 date,datetime:日期类型('2014-01-01 01:01:01') char(1) char(11) insert into user values(9,'zf1@th.cn','123','zf1',10,3,3,'2014-10-23 09:44:44'); insert into user values(10,'qf1@th.cn','123','qf1',8,3,30,'2014-10-23 09:44:44'); insert into user values(11,'ef1@th.cn','123','ef1',18,6,13,'2014-10-23 09:44:44');
insert into user(email,pwd) 1、用户经验值大于 0 的用户的 email,exp,regdate select email,exp,regdate from user where exp >0; 2、从用户表中查询未填写 name 的用户的 uid,email,lv select uid,email,lv from user where name = null; × where name is null; where name is not null; 3、查询 uid 在 3-5 之间的用户信息。 select * from user where uid between 3 and 5; select * from user where uid >= 3 and uid <= 5; select * from user where uid <> 4;//不等于 4 4、查询 user 表中的用户权限有哪几种? select lv from user ; select distinct lv from user; 5、查询 user 表中的用户财富值,并且从多到少排序。 select email,coin from user order by coin desc;//降序 select email,coin from user order by coin asc;// 默认升序(asc) lv↓,coin↓,uid↑ select email,lv,coin,uid from user order by lv desc,coin desc,uid asc; 第五天: 多表联合查询 1、查询每个版块的版块 sid,版块名,版主姓名(没有版主的版块暂不考虑) select sid,s.name "版块名" ,u.name "版主",email from section s ,user u where s.uid = u.uid; select sid,s.name,u.name,email from section s join user u on s.uid = u.uid; //上面不会显示版主没人的情况 //如果需要显示所有的版块 select sid,s.name,u.name,email from section s left join user u on s.uid = u.uid; 2、查询每个主题的回帖 select t.tid,name,r.content from theme t left join rtheme r on t.tid = r.tid;
分享到:
收藏