java多重转型问题】的更多相关文章

我们来看一个简单的问题,下面的代码会打印出什么? public class hello { public static void main(String[] args){ System.out.println((int)(char)(byte)-1); } } 相信很多人会说最终输出为-1,但是实际结果却是65535,这是为什么? 这个程序中涉及了三次类型转换,该行为紧密依赖于转型的符号拓展行为.Java使用了基于2的补码的二进制运算,因此int类型的-1用32位补码表示就是11111...11…
Java表达式转型规则由低到高转换: 1.所有的byte,short,char型的值将被提升为int型: 2.如果有一个操作数是long型,计算结果是long型: 3.如果有一个操作数是float型,计算结果是float型: 4.如果有一个操作数是double型,计算结果是double型: 5.被fianl修饰的变量不会自动改变类型,当2个final修饰相操作时,结果会根据左边变量的类型而转化.…
                                            Java向上转型和向下转型(附具体样例) 熬夜整理的关于Java向上和向下转型的样例,很的通俗易懂哦~~~~ 一.向上转型 package com.sheepmu; class Animal { public void eat() { System.out.println("父类的 eating..."); } } class Bird extends Animal { @Override publ…
//父类 四边形 class Quadrangle{ public static void draw (Quadrangle q){ } } //子类  public class Parallelogram extends Quadrangle{ public static void main(String args[]){ Parallelogram  p=new Parallelogram (); //这就是向上转型 draw(p) } } //子类 public class Paralle…
比如我这个程序 public class Testjava{ public static void main(String args[]) { fun(new Student()); fun(new Allen()); } public static void fun(Person p) { p.fun2(); if (p instanceof Student) { Student s=(Student)p; s.fun3(); } if (p instanceof Allen) { Allen…
转型是在继承的基础上而言的,继承是面向对象语言中,代码复用的一种机制,通过继承,子类可以复用父类的功能,如果父类不能满足当前子类的需求,则子类可以重写父类中的方法来加以扩展. 向上转型:子类引用的对象转换为父类类型称为向上转型.通俗地说就是是将子类对象转为父类对象.此处父类对象可以是接口 向下转型:父类引用的对象转换为子类类型称为向下转型. 前者是一个向上转型,Animal dog 引用指向new Dog();子类对象当成父类对象,只能调用父类的成员,如果子类重写了父类的方法就根据这个引用指向调…
在java继承体系中,认为父类(超类)在上层,子类在下层(派生类) ,向上转型就是把子类对象转成父类对象. public class Father { public void eat(){ System.out.println("我是父类的方法吃....."); } } public class Son extends Father{ public void eat(){ System.out.println("我是Son的方法吃....."); } public…
最近在向java发力,学习学习了下.看到了多态这一节,书中有个比较好的例子,所以就准备写下来,记录下来: package dynamic_binding01; public class dynamic_binding01 { public static void main(String[] args) { // TODO Auto-generated method stub Super super1=new Sub(); System.out.println("sup.field="+…
学习向上转型和向下转型怎么用没多难,但是为什么那样用,我搞了很多次没弄明白.没弄明白的原因是平时学习时之看例子,而例子一般都比较简单,没有对象之间的调用,一般就是一个对象调用自己的方法. 首先看下怎么用转型. 要转型,首先要有继承.继承是面向对象语言中一个代码复用的机制,简单说就是子类继承了父类中的非私有属性和可以继承的方法,然后子类可以继续扩展自己的属性及方法. 向上转型:子类对象转为父类,父类可以是接口.公式:Father f = new Son();Father是父类或接口,son是子类.…
转型是在继承的基础上而言的,继承是面向对象语言中,代码复用的一种机制,通过继承,子类可以复用父类的功能,如果父类不能满足当前子类的需求,则子类可以重写父类中的方法来加以扩展. 向上转型:子类引用的对象转换为父类类型称为向上转型.通俗地说就是是将子类对象转为父类对象.此处父类对象可以是接口 向下转型:父类引用的对象转换为子类类型称为向下转型. 前者是一个向上转型,Animal dog 引用指向new Dog();子类对象当成父类对象,只能调用父类的成员,如果子类重写了父类的方法就根据这个引用指向调…
//http://www.weixueyuan.net/view/6311.html //多重循环 import java.util.Scanner; public class Test16{ public static void main(String args[]){ Scanner in =new Scanner(System.in); for (int i=1;i<=3;i++){ //最外层循环 int sum=0; for (int j=1;j<=3;j++){ System.ou…
Object obj="hello"; 上面的obj是什么类型? object?NO!String?NO? 答案:编译阶段是Object类型,而在运行阶段是String类型.实际上obj是String类型.只不过分为编译和运行两个部分! 那为什么会发生这种情况呢? 我们知道:对于Object obj而言,程序声明了一个Object类型的变量! 而“hello”是一个String类型的对象 将Object类型的变量只想String类型的对象,由上篇可以看出这是一个上转型类型!变量由Str…
import java.util.Arrays;import java.util.HashSet;import java.util.Set;class A{ private String s1 = "A1" ; public String s2 = "A2" ; public String get(){ return s2 ; } public String getS1(){ return s1 ; } }class B extends A{ private Str…
Java 转型问题其实并不复杂,只要记住一句话:父类引用指向子类对象. 什么叫父类引用指向子类对象,且听我慢慢道来. 从2个名词开始说起:向上转型(upcasting) .向下转型(downcasting). 举个例子:有2个类,Father是父类,Son类继承自Father. Father f1 = new Son();   // 这就叫 upcasting (向上转型) // 现在f1引用指向一个Son对象 Son s1 = (Son)f1;   // 这就叫 downcasting (向下…
一.向上转型 例如:Parent p=new Son(); 这样引用p只能调用子类中重载父类的方法:但属性是父类的:如果想调用子类属性的话,可以用getter()方法. 二.向下转型 子类对象的父类引用赋给子类引用叫向下转型(downcasting),要强制转换,例如:Father f1 = new Son();Son s1 = (Son)f1;…
原系列名:Maven学习总结(一) 原博文出自于:http://www.cnblogs.com/xdp-gacl/p/3498271.html 感谢! 一.Maven的基本概念 Maven(翻译为"专家","内行")是跨平台的项目管理工具.主要服务于基于Java平台的项目构建,依赖管理和项目信息管理. 1.1.项目构建 项目构建过程包括[清理项目]→[编译项目]→[测试项目]→[生成测试报告]→[打包项目]→[部署项目]这几个步骤,这六个步骤就是一个项目的完整构建过…
Java 开发环境配置 > * 下载JDK> * 配置环境变量> * 测试JDK是否安装成功> * 使用 Eclipse 运行第一个 Java 程序 下载JDK 首先我们需要下载java开发工具包JDK,下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html,点击如下下载按钮: 在下载页面中你需要选择接受许可,并根据自己的系统选择对应的版本,本文以 Window 64位系统为例: 下载后JDK的…
/*2015-10-30*/ public class TypeAutoConvert { public static void main(String[] args) { int a = 5; System.out.println("value is " + ((a < 5) ? 10.9 : 9)); } } 输出:value is 9.0 (a < 5) ? 10.9 : 9表达式中,10.9后面跟一个9,Java根据运算符的精度类型进行自动类型转换,9类型转为dou…
/*上转型和下转型(对象的多态性) *上转型:是子类对象由父类引用,格式:parent p=new son *也就是说,想要上转型的前提必须是有继承关系的两个类. *在调用方法的时候,上转型对象只能调用父类中有的方法,如果调用子类的方法则会报错 *下转型:是父类向下强制转换到子类对象 *前提是该父类对象必须是经过上转型的对象. * *代码示例:*/ abstract class Parent{ abstract void grow(); } class Son extends Parent{ v…
一.对象转型介绍 对象转型分为两种:一种叫向上转型(父类对象的引用或者叫基类对象的引用指向子类对象,这就是向上转型),另一种叫向下转型.转型的意思是:如把float类型转成int类型,把double类型转成float类型,把long类型转成int类型,这些都叫转型.把一种形式转成另外一种形式就叫转型.除了基础数据类型的转型之外(基础数据类型的转型:大的可以转成小的,小的也可以转成大的.),对象领域里面也有对象之间的转型. 1.1.对象转型实例一 1 package javastudy.summa…
某些情况,由单个代码段可能引起多个异常.处理这种情况,你可以定义两个或更多的catch子句,每个子句捕获一种类型的异常.当异常被引发时,每一个catch子句被依次检查,第一个匹配异常类型的子句执行.当一个catch语句执行以后,其他的子句被旁路,执行从try/catch块以后的代码开始继续.下面的例子设计了两种不同的异常类型:// Demonstrate multiple catch statements.class MultiCatch {    public static void main…
文章来源:http://www.cnblogs.com/wxisme/p/4924561.html web.xml的配置                                                                                                                                                                  web.xml应该是整个项目最重要的配置文件了,不过se…
public class NeedCasting { @SuppressWarnings("unchecked") public void f(String[] args)throws Exception{ ObjectInputStream in = new ObjectInputStream(new FileInputStream(args[0])); //List<String> list = (List<String>)in.readObject();…
[对象转型]  …
向上转型 经典案例 向上转型 向上转型应注意的问题 向上转型的好处 静态方法的调用 经典案例 public class Animal { public void eat(){ System.out.println("animal eatting..."); } } public class Cat extends Animal{ public void eat(){ System.out.println("我吃鱼"); } } public class Dog ex…
1 package face_09; 2 3 /* 4 * 毕老师和毕姥爷的故事. 5 */ 6 class 毕姥爷 { 7 void 讲课() { 8 System.out.println("管理"); 9 } 10 void 钓鱼() { 11 System.out.println("钓鱼"); 12 } 13 } 14 class 毕老师 extends 毕姥爷 { 15 void 讲课() { 16 System.out.println("Java…
public class HelloWorld { public static void main(String[] args) { int age=25; if(age>60){ System.out.println("老年"); }else if(age>40 && age<60){ System.out.println("中年"); }else if(age>18 && age<40){ Syste…
继承.接口:Java子类中如果含有父类中不包含的变量与方法,子类对象向上转型时就是丢失这些变量和方法. interface SuperClass{ int i = 2; void f() ; } class SubClass implements SuperClass{ int i = 1 ; int j = 2 ; public void f(){ System.out.println("SubClass.f()"); } public void fun(){ System.out.…
1.http://www.cnblogs.com/diegodu/p/5915358.html tomcat直接解压,启动然后测试是否正常. 2.http://www.cnblogs.com/mq0036/p/3875972.html 主要内容如下 下载tomcat对eclipse的插件.下载地址:http://www.eclipsetotale.com/tomcatPlugin.html这个页面还有,安装说明的,英语好的可以自己看看.我下的这个;tomcatPluginV321.zip,当然其…
http://www.cnblogs.com/xdp-gacl/p/4054814.html…