JAVA学习笔记之与C#对比
最近在学习java,刚学完入门课程...下面说一下入门课程中相对印象深刻的知识点
JAVA-C#差异
1. for循环
C#
string [] strarr=new string[5];
foreach( string i in strarr)
java
String[] strarr=new String[5];
foreach(String str:strarr)
2. 继承
C# 类后使用 : 可直接继承
java 使用 extends
3.java中final 关键字 最终的, 可以修饰类 变量 方法 属性
类: final public class xxx 是 类似于 C#中 sealed 密封类,不可以被继承
------------------------------------------------------------------分割线------后面继续补充-----------------------------
方法 :同类类似,使用sealed密封方法
变量: final=constant 常量 在定义是必须指定值,而且类的构造方法不初始化final 变量, 子类不可修改final 变量。
4.多态
自动转换,又下至上,由子往父 例如 动物类A 和继承动物类A的狗类B 类A=狗B
强制转换类型,由上至下, 例如 动物类A 和继承动物类A的狗类B 狗B=(狗)类A 可能会出现异常,溢出。较危险。
5.Interface 类似抽象类, 关键字 abstract 在定义是与C#一样, 以I 开头.
在java中创建接口和C#中一样,方法不需要有方法体,需要实现接口的类来override 方法
创建接口或接口的内部方法时我们可以不加abstract public interface IPlay{
} 系统默认会隐士变成 public abstract interface
6. java中 supper 关键字,类似于C#中的base关键字, 访问父类中的属性和方法.
而且在默认加载子类时,默认的无参构造参数中会在第一行增加supper()方法来构造父类,隐式添加
也可以我们自己写,必须加在第一行
7.java 中instanceof 关键字,用来匹配 当前类型是否为 instanceof 后的类型,返回布尔值.
1).对象实现一个接口,用这个对象和这个接口进行instanceof判断,都为true。
2).对象和父类进行instanceof判断,都为true
3).对象和他的子类进行instanceof判断为false
8. UML unified modeling language 统一建模语言
a.常用的UML工具
Visio , Rational Rose ,Power Design
b.常用UML三种图
用例图
能够以可视化的方式表达系统如何满足所搜集的业务规则.通常是用来描述在系统中出现的角色所具备的功能
序列图
描述角色和计算机内存中对象的关系,以什么顺序执行的,更关注序列.
类图 也叫 类别图
描述业务逻辑,结构性的信息,描述类和类之间的关系,类中有什么属性和方法.从不同的环节了解系统的功能.
9.“==” 和 equals() 有什么区别呢?
==: 判断两个字符串在内存中首地址是否相同,即判断是否是同一个字符串对象
equals(): 比较存储在两个字符串对象中的内容是否一致
JAVA学习笔记之与C#对比的更多相关文章
- Java学习笔记(04)
Java学习笔记(04) 如有不对或不足的地方,请给出建议,谢谢! 一.对象 面向对象的核心:找合适的对象做合适的事情 面向对象的编程思想:尽可能的用计算机语言来描述现实生活中的事物 面向对象:侧重于 ...
- 《Java学习笔记(第8版)》学习指导
<Java学习笔记(第8版)>学习指导 目录 图书简况 学习指导 第一章 Java平台概论 第二章 从JDK到IDE 第三章 基础语法 第四章 认识对象 第五章 对象封装 第六章 继承与多 ...
- 20145231第二周Java学习笔记
20145231 <Java程序设计>第2周学习总结 教材学习内容总结 本周的学习采用的依然是先看课本,再看视频,然后实践敲代码,最后根据学习笔记总结完成博客. 第三章:基础语法 知识点比 ...
- 0037 Java学习笔记-多线程-同步代码块、同步方法、同步锁
什么是同步 在上一篇0036 Java学习笔记-多线程-创建线程的三种方式示例代码中,实现Runnable创建多条线程,输出中的结果中会有错误,比如一张票卖了两次,有的票没卖的情况,因为线程对象被多条 ...
- 0035 Java学习笔记-注解
什么是注解 注解可以看作类的第6大要素(成员变量.构造器.方法.代码块.内部类) 注解有点像修饰符,可以修饰一些程序要素:类.接口.变量.方法.局部变量等等 注解要和对应的配套工具(APT:Annot ...
- 0032 Java学习笔记-类加载机制-初步
JVM虚拟机 Java虚拟机有自己完善的硬件架构(处理器.堆栈.寄存器等)和指令系统 Java虚拟机是一种能运行Java bytecode的虚拟机 JVM并非专属于Java语言,只要生成的编译文件能匹 ...
- 0030 Java学习笔记-面向对象-垃圾回收、(强、软、弱、虚)引用
垃圾回收特点 垃圾:程序运行过程中,会为对象.数组等分配内存,运行过程中或结束后,这些对象可能就没用了,没有变量再指向它们,这时候,它们就成了垃圾,等着垃圾回收程序的回收再利用 Java的垃圾回收机制 ...
- 0028 Java学习笔记-面向对象-Lambda表达式
匿名内部类与Lambda表达式示例 下面代码来源于:0027 Java学习笔记-面向对象-(非静态.静态.局部.匿名)内部类 package testpack; public class Test1{ ...
- 0025 Java学习笔记-面向对象-final修饰符、不可变类
final关键字可以用于何处 修饰类:该类不可被继承 修饰变量:该变量一经初始化就不能被重新赋值,即使该值跟初始化的值相同或者指向同一个对象,也不可以 类变量: 实例变量: 形参: 注意可以修饰形参 ...
随机推荐
- C#基础系列——委托实现简单设计模式
前言:上一篇介绍了下多线程的相关知识:C#基础系列——多线程的常见用法详解,里面就提到了委托变量.这篇简单介绍下委托的使用.当然啦,园子里面很多介绍委托的文章都会说道:委托和事件的概念就像一道坎,过了 ...
- (转)C#为什么要使用Invoke,它和BeginInvoke有什么区别
在Invoke或者BeginInvoke的使用中无一例外地使用了委托Delegate. 一.为什么Control类提供了Invoke和BeginInvoke机制? 关于这个问题的最主要的原因已经是do ...
- OpenLayers的定制
最近因为工作的需要,把主流的的一些GIS的javascript库看了一遍,主要是ArcGIS Server API for Javascript,Openlayers和Leaflet. 先说说ArcG ...
- Palindrome Index
传送门: Palindrome Index Problem Statement You are given a string of lower case letters. Your task is t ...
- javascript拖动div
div拖动代码,在用此代码之前,你可能需要将你需要拖动的元素style设置position: absolute; #textareaSavaDiv{ position: absolute; right ...
- Java初学者笔记
Java初学者笔记 前提:认识汉字,认识英语单词,会用键盘打字 ------------------------------- 端口是什么: --------面向对象编程(OOP) 接口”(Inter ...
- 海思H264解码库 hi_h264dec_w.dll 水印问题
上一篇 海思h264解码库 , 实现了H264帧的简单解码,但更换相机后,出现了解码视频中央出现水印的问题,水印如下图 查找网络,基本就这一篇相关的,还没给出好的解决办法. http://bbs. ...
- 精选9个值得学习的 HTML5 效果【附源码】
这里精选了一组很酷的 HTML5 效果.HTML5 是现 Web 开发领域的热点, 拥有很多让人期待已久的新特性,特别是在移动端,Web 开发人员可以借助 HTML5 强大功能轻松制作各种交互性强.效 ...
- 兼容IE6的min-width、min-height
如果一个站是宽屏的,你左右拖动浏览器的窗口网站宽度会随着窗口的大小而改变,而浏览器窗口宽度减小到一定程度后就会出现下边的滚动条,网站宽度就不会再减小了,我们知道这一简单的功能用css的min-widt ...
- 1.0、Struts2的简单搭建方法
一.Struts2:是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet:用于jsp页面与Java代码之间的交互. 1.核心:Filter拦截器,对所有的请求进行拦截. 2.工作 ...