java实训周报_实验室周报
这周身为后台组的萌新,刚刚接触了java的基础知识,从面相过程的c语言跳转到面向对象
java一时还有点不适应,基础语法虽然都懂,但是还是有一些新知识要记到“小本本”上的。
1、for循环里面有一个新知识点:
(小标签) out:for(i=0;i
即想要通过内层嵌套循环来跳出外层循环,可以使用给外循环标签的形式来控制外层循
环跳出。
2、数组方面的知识:
比如说给定一个数组和一个待拷贝数组,你有三种方法可以做:
1)使用for循环来进行拷贝,当然除了for(i=0;i简单表达方式呢,适用于不牵扯数组的更改,知识从头到尾的遍历;但是真的很方便;
2)使用System.arraycopy(原数组,开始拷贝的索引,目标数组,待开始拷贝索引,拷贝长
度)可以进行连续拷贝;(但是有一个疑问就是,如果不是连续拷贝就只能用第一种方法
吗?)
3)使用java自带的数组工具类,即:java.util.Arrays.copyOf(原数组,长度),虽然看起来
很牛,但是其源代码还是调用了System.arraycopy(原数组,开始拷贝的索引,目标数组,待
开始拷贝索引,拷贝长度)这个工具类。而且默认的拷贝开始索引为0,不够智能,所以不值
一提。
还有呢数组的输出格式java也有相应的方法 java.util.Arrays.toString(dest) 输出效果是
[1,2,3,4,5] 。
3、方法的重载和构建器的重载:
为了避免实现同一功能而另外创建方法或者构建器,java有重载的操作,即
1)方法:遵循两同一不同原则:在同一个类中,且方法名相同,但(参数类型,参数顺序,
参数个数)只要其中一个不同,就是运用了方法重载,,且与参数名和返回类型无关,可以
省很多事情;
2)构建器:即创建对象时采取的,和方法差不多,格式为(其类相同的类名)(){}
不同之处也是参数方面。
4、封装
封装我只是浅显得了解了一下:也是为了coder的便利,采用封装常用的方法的操作,只需要
进行方法的调用,就可以实现一些功能,当然里面肯定也有一些重载方法,才能构成一个强
大的功能。
在自制的封装时,有两种情况,一是在同一文件夹里进行封装(比如说新建一个主类名为hi
的java class,里面有一个名为void print()的方法,那么你就可以直接调用hi.print()来实
现);然而如果封装在另一个文件夹的话,那么你就需要“倒包”(在主类上面加入(import 文
件夹名.主类名;)),到时候就可以直接调用hi.print()来实现,当然有一个小细节,即在主类hi
下的方法必须加public static…才能被调用,否则会报错。
5、在同一源文件中除主类外,另外创建类时,其方法或成员变量前有无static含义不同。 无
static时,当你在主类里调用另一个类的方法时,所描述的功能或者特性为针对改对象(或实
例)而言的,例如:当你定义“人”这个类,并且执行“死亡”这个功能时,其含义为个体的死
亡; 有 static时,当你执行"死亡”功能时,代表这一类的死亡,即“人类灭亡”。
List item
6、方法区,栈,堆:当然也只是了解一点,方法区(来自小白理解)存储的是你定义的方法
和方法里的变量。栈里面存储的是成员变量和主方法里的局部变量。堆里面存储的是new出
来的数据,例如数组和对象。然后呢在堆里面new出来的数组和对象可以用栈里面的变量去
赋值(这样说也不对,其实是把堆数据里面的地址给了栈里面的变量),而栈变量与堆里面
的数据结合在一起就构成了引用关系。当引用关系不存在时(堆里面的数据的地址没有栈里
面的变量来储存的话,就变成了垃圾数据,这就需要垃圾处理器)。
List item
7、零碎知识集合:相比c语言的数据类型,java支持字符串类型:String,当然也有String类型
的数组,java7以后也有了二进制的表示方法0b/0B…;java7以后还有数字直接用下划线分
隔且不影响数字表示的机制:756<==>7_5_6,但是注意下划线两边只能是数字,这就意味着
数字开头之前和数字结尾之后不能用下划线。java里面的char为两个字节,意味着能存一个
汉字,也就是说你定义一个char类型的数组,你可以一个元素表示一个汉字。
java的变量分为两种,成员变量和局部变量,在主类中,成员变量必须在数据类型前加static
才能被方法所调用。变量还分为静态初始化和动态初始化,静态初始化是基于自己已知值的
的情况下,动态初始化,除char和String,以及什么来着,额,不要在意这种细节,之外,都
是初始化为0的,char初始化为null。
java实训周报_实验室周报相关推荐
- java 实训项目_实训方案(JavaWeb项目实训)-
实训方案(JavaWeb项目实训)- 2012-2013学年第一学期 <Java Web项目开发实训>课程实施方案 课程名称(英文):Training of Java Web Projec ...
- 【项目实训】0501公共周报
[项目实训]0501公共周报 一.进一步明确了总体架构 如图: 二.明确功能点及具体细节 1.展示所有任务 点击左侧侧边栏<所有任务>向后端发送展示请求,后端读取数据库数据,返还给前端进行 ...
- Java实训学生信息_(java实训)学生信息管理系统.doc
您所在位置:网站首页 > 海量文档  > 计算机 > Java (java实训)学生信息管理系统.doc9页 本文档一 ...
- 【项目实训】0320公共周报
[项目实训]0320公共周报 项目实训总结(三) 一.本周工作总结 论文研读<Communication-efficient learning of deep networks from dec ...
- 攀枝花java培训班_千里IT之行,始于中软卓越 丨中软国际成都EEC举行攀枝花学院2016年JAVA实训开班仪式...
2016年6月27日上午9点30分,攀枝花学院2016年JAVA实训开班仪式在中软国际成都EEC13-4项目室举行:中软国际成都EEC技术总监谭岚.校企联合部经理陈莉.人才管理部主管何磊.人才服务部主 ...
- 计算机Java校内实训报告_计算机java实训总结的范本
计算机java实训总结的范本 这一期的实习,虽然实习的时间不长,但是总体上收获挺大的,学习中我不但有了学习成果的喜悦,而且自己也日渐成熟,有种说不出的喜悦.以下是我在这次实习中的一些感悟和体会: 1. ...
- java实训设想及建议_大学java实训总结.doc
大学java实训总结 大学java实训总结 篇一:Java实训心得 心得体会 此次只实训了短短的三周.虽说时间很短,但其中的每一天都使我收获很大.受益匪浅,它不但极大地加深了我对一些理论知识的理解,不 ...
- JAVA实训项目:银行网银系统管理平台(含源码)
JAVA实训项目:银行网银系统管理平台(含源码) 文章目录 JAVA实训项目:银行网银系统管理平台(含源码) 前言 一.项目功能需求描述以及相关技术的应用 相关技术应用 二.设计过程 系统流程图 1. ...
- java实训手册_java实训项目用户手册
java实训项目用户手册 1 用户手册 第 1章 引言 1.1编写目的编写本手册的主要目的是为了方便使用的用户管理系统能够更加方便使用 此系统,以及更快的掌握JDK,MySQL,MyEclipse使之 ...
最新文章
- CentOS 7.1云服务器 配置FTP服务器vsftpd
- python打开-Python中的打开文件对话框(转)
- 七十一、Python | Leetcode字符串系列(上篇)
- 辰星计划2021 | 旷视春季实习生招募—空中宣讲会第二弹来了!
- Android Studio——[The ‘kotlin-android-extensions‘ Gradle plugin is deprecated.]解决方案
- 【GOF23设计模式】迭代器模式
- 具有审计表的实体框架
- 元旦,请查收程序员专属祝福礼!
- ADB启动或关闭APP
- opencv之resize
- 清除windows 系统中 任意已安装任意版本的 .NET Framework
- 极客DIY:廉价电视棒玩转GNSS-SDR,实现GPS实时定位
- 电机不动 米兔机器人_深度解密米兔积木机器人八大黑科技
- 从Zemax导入光学系统
- 试题 基础练习 圆的面积-蓝桥杯
- 基于UML的高校教务管理系统的设计与实现
- 【收集】Oracle官网账号
- opencv subtract函数内存泄漏
- 数学与计算机科学虎扑,北大数学系在国内是最顶级存在吗?
- LINUX 报错:使用scp复制文件No such file or directory 及主机名注意事项
热门文章
- 基因组行业重大事件介绍
- 序列多重比对工具:MUSCLE
- ubuntu 18.04.4 - 显示文件路径
- Chart.js-饼状图分析(参数分析+例图)
- OpenGL坐标系及坐标转换
- Tensorflow 源码安装成功,导入报错 ImportError: cannot import name 'build_info'
- java.io.IOException: Incompatible clusterIDs
- windows oracle path,Oracle-Windows平台Path的问题
- ionic 笔记-wzq
- C++_重载new,delete