java8 能不能支持redhat5.5 64位下载

当前位置:&&
本页文章导读:
&&&&?Intent其间传递复杂的对象 &&&&&& Intent之间传递复杂的对象
在实际项目中,页面之间传值,除了以上几种,经常还有传递Object对象、List类型、List&Object&类型和全局变量等等的需求。本文就是介绍怎么传递这几种类型的......&&&&? ListView几个不一般的属性 &&&&&& ListView几个特别的属性
由于这两天在做listView的东西,所以整理出来一些我个人认为比较特别的属性,通过设置这样的属性可以做出更加美观的列表
首先是stackFromBottom属性,这......&&&&? 十年微日志&&&&&& 十年微日记
迄今为止iPhone上发现的最好的日记本软件。将十年中的同一天放在一页上显示,写某一天日记的时候,可以回顾之前每一年的这一天都做了什么,太有成就感了界面看着很舒服......
&&&&&&最新IT科技资讯推荐:
[1]Intent其间传递复杂的对象
&&&&来源:&互联网& 发布时间:&
Intent之间传递复杂的对象
在实际项目中,页面之间传值,除了以上几种,经常还有传递Object对象、List类型、List&Object&类型和全局变量等等的需求。本文就是介绍怎么传递这几种类型的参数。
一、传递List&String&和List&Integer&
以下以传递List&String&为例,发送List&String&语法为:
intent.putStringArrayListExtra(key, list);
接收List&String&的语法为:
list = (ArrayList&String&)getIntent().getStringArrayListExtra(key);
以下是一个运用实例:
// =============发送List&String&=============
ArrayList&String& stringList = new ArrayList&String&();
stringList.add("string1");
stringList.add("string2");
stringList.add("string3");
Intent intent = new Intent();
intent.setClass(ListDemoActivity.this, StringListActivity.class);
intent.putStringArrayListExtra("ListString", stringList);
startActivity(intent);
// ====================接收List&String&======================
ArrayList&String& stringList = (ArrayList&String&) getIntent().getStringArrayListExtra("ListString");
List&Integer&类似以上的操作调用下面的方法也可以实现发送和接收:
intent.putIntegerArrayListExtra(key, list);
list =(ArrayList&Integer&) getIntent().getIntegerArrayListExtra(key);
二、使用Serializable和Parcelable两种方式传递Object
Android的Intent之间传递对象有两种方法,一种是Bundle.putSerializable(Key,Object);另一种是Bundle.putParcelable(Key,Object)。方法中的Object要满足一定的条件,前者实现了Serializable接口,而后者实现了Parcelable接口。
以下是实现了Serializable接口的User类,命名为SerializableUser纯粹是从类名方便区分实现了Parcelable接口的User类,实际开发中不建议这么命名:
public class SerializableUser implements Serializable {
private String userN
public SerializableUser() {
public SerializableUser(String userName, String password) {
this.userName = userN
this.password =
public String getUserName() {
return userN
public void setUserName(String userName) {
this.userName = userN
public String getPassword() {
public void setPassword(String password) {
this.password =
以下是实现了Parcelable接口的User类:
public class ParcelableUser implements Parcelable {
private String userN
public ParcelableUser() {
public ParcelableUser(String userName, String password) {
this.userName = userN
this.password =
public String getUserName() {
return userN
public void setUserName(String userName) {
this.userName = userN
public String getPassword() {
public void setPassword(String password) {
this.password =
public static final Parcelable.Creator&ParcelableUser& CREATOR = new Creator&ParcelableUser&() {
public ParcelableUser createFromParcel(Parcel source) {
ParcelableUser parcelableUser = new ParcelableUser();
parcelableUser.userName = source.readString();
parcelableUser.password = source.readString();
return parcelableU
public ParcelableUser[] newArray(int size) {
return new ParcelableUser[size];
public int describeContents() {
// TODO Auto-generated method stub
public void writeToParcel(Parcel dest, int flags) {
// TODO Auto-generated method stub
dest.writeString(userName);
dest.writeString(password);
使用两种方式传递的语法分别为:
bundle.putSerializable(key,object);
bundle.putParcelable(key,object);
使用两种方式接收的语法分别为:
object=(Object) getIntent().getSerializableExtra(key);
object=(Object) getIntent().getParcelableExtra(key);
// ==========分别使用Serializable和Parcelable发送Object===============
SerializableUser serializableUser = new SerializableUser("user1", "123456");
ParcelableUser parcelableUser = new ParcelableUser("user2","654321");
Intent intent = new Intent();
Bundle bundle = new Bundle();
bundle.putSerializable("serializableUser", serializableUser);
bundle.putParcelable("parcelableUser", parcelableUser);
intent.setClass(ListDemoActivity.this,ObjectActivity.class);
intent.putExtras(bundle);
startActivity(intent);
// ====================接收Object======================
SerializableUser serializableUser = (SerializableUser) getIntent().getSerializableExtra("serializableUser");
ParcelableUser parcelableUser = (ParcelableUser) getIntent().getParcelableExtra("parcelableUser");
可能有人注意到,实现Serializable接口就是把对象序列化,然后再传输,和Java的常用编程没什么明显区别,而且User不需要明显改变,比较简单。我也推荐用这种方式。
然而,后一种实现Parcelable接口的类比较复杂,Parcelable是个什么东西呢?
Android提供了一种新的类型:Parcel,被用作封装数据的容器,封装后的数据可以通过Intent或IPC传递。 除了基本类型以外,只有实现了Parcelable接口的类才能被放入Parcel中。
实现Parcelable接口需要实现三个方法:
1)writeToParcel 方法。该方法将类的数据写入外部提供的Parcel中。
声明:writeToParcel (Parcel dest, int flags)。
2)describeContents方法。直接返回0就可以。
3)静态的Parcelable.Creator&T&接口,本接口有两个方法:
createFromParcel(Parcel in) 实现从in中创建出类的实例的功能。
newArray(int size) 创建一个类型为T,长度为size的数组, returnnew T[size];即可。本方法是供外部类反序列化本类数组使用。
通过log测试输出可知程序的运行情况,在bundle.putParcelable(“parcelableUser”, parcelableUser);时,调用了ParcelableUser类中的publicvoid writeToParcel(Parcel dest, int flags)方法,并向dest写数据,在 ParcelableUserparcelableUser= (ParcelableUser)getIntent().getParcelableExtra(“parcelableUser”);的时候,调用了ParcelableUser类中的public ParcelableUsercreateFromParcel(Parcel source) 方法,创建了一个ParcelableUser对象,并给这个对象的属性赋值,这里的Parcel source和Parcel dest是相同的,然后返回这个ParcelableUser对象。最后就可以打印出parcelableUser的属性信息了。
三、传递List&Object&
如果我们要传递的是Object组成的List列表,即List&Object&,该怎么办呢?首先需要将Object对象实现Serializable接口,然后把list强制类型转换成Serializable类型,最后通过:
Intent.putExtra(key, (Serializable)objectList);
这样的语法来传递,接收方在接收的时候也需要强制类型转换成List&Object&,接收 List&Object&使用的语法是:
objectList= (List&Object&) getIntent().getSerializableExtra(key);
以下是一个应用实例,这里使用的SerializableUser类在上一步有给出,这里就不再重复给出。
// ==============发送List&Object&===========
SerializableUser user1 = new SerializableUser("user1", "123456");
SerializableUser user2 = new SerializableUser("user2", "654321");
List&SerializableUser& objectList = new ArrayList&SerializableUser&();
objectList.add(user1);
objectList.add(user2);
Intent intent = new Intent();
intent.setClass(ListDemoActivity.this, ObjectListActivity.class);
intent.putExtra("ListObject", (Serializable) objectList);
startActivity(intent);
// ====================接收List&Object&======================
List&SerializableUser& objectList = (List&SerializableUser&) getIntent().getSerializableExtra("ListObject");
四、全局变量
如果一些特殊的应用级别的参数,不方便使用intent来传递参数,我们很容易想到是不是有全局变量或静态变量可以使用?Java中的静态变量在这里是适合的,但其值在Activity调用了System.exit(0)或finish()后就丢失了。
而在Android中有个更优雅的方式是使用ApplicationContext。这种全局变量方法相对静态类更有保障,直到应用的所有Activity全部被destory掉之后才会被释放掉。
Android的SDK中有说道,Application是用来保存全局变量的,并且是在package创建的时候就存在了。所以当我们需要创建全局变量的时候,不需要再像J2SE那样需要创建public权限的static变量,而直接在application中去实现。只需要调用Context的 getApplicationContext或者Activity的getApplication方法来获得一个Application对象,就可以设置或读取全局变量的值。
启动Application时,系统会创建一个PID,即进程ID,所有的Activity就会在此进程上运行。那么我们在Application创建的时候初始化全局变量,同一个应用的所有Activity都可以取到这些全局变量的值,换句话说,我们在某一个Activity中改变了这些全局变量的值,那么在同一个应用的其他Activity中值就会改变。
创建一个属于你自己的Android.app.Application的子类,为想要共享的private全局变量增加setter和getter方法。
public class MyApp extends Application{
private String globalV
public String getGlobalVariable() {
return globalV
public void setGlobalVariable(String globalVariable) {
this.globalVariable = globalV
在manifest中申明一下这个类,这时Android就为此建立一个全局可用的实例。
其实就是在原来仅有的一个application标签上为application制定一个名字为这个全局实例。
&application Android:name=".MyApp" android:icon="@drawable/icon" android:label="@string/app_name"&
可以在其他任何地方使用Context.getApplicationContext()方法获取这个实例,进而获取其中的状态(变量)。
// ============使用全局变量传递参数==============
MyApp myApp = ((MyApp) getApplicationContext());//获得我们的应用程序MyApp
myApp.setGlobalVariable("全局变量");
Intent intent = new Intent();
intent.setClass(ListDemoActivity.this, GlobalActivity.class);
startActivity(intent);
// ============接收全局变量的参数==============
MyApp myApp = ((MyApp) getApplicationContext());
String globalVariable = myApp.getGlobalVariable();
[2] ListView几个不一般的属性
&&&&来源:&互联网& 发布时间:&
ListView几个特别的属性
由于这两天在做listView的东西,所以整理出来一些我个人认为比较特别的属性,通过设置这样的属性可以做出更加美观的列表
首先是stackFromBottom属性,这只该属性之后你做好的列表就会显示你列表的最下面,值为true和false.
android:stackFromBottom="true"
第二是 transciptMode属性,需要用ListView或者其它显示大量Items的控件实时跟踪或者查看信息,并且希望最新的条目可以自动滚动到可视范围内。通过设置的控件transcriptMode属性可以将Android平台的控件(支持ScrollBar)自动滑动到最底部。 android:transcriptMode="alwaysScroll"
第三cacheColorHint属性,很多人希望能够改变一下它的背景,使他能够符合整体的UI设计,改变背景背很简单只需要准备一张图片然后指定属性 android:background="@drawable/bg",不过不要高兴地太早,当你这么做以后,发现背景是变了,但是当你拖动,或者点击list空白位置的时候发现ListItem都变成黑色的了,破坏了整体效果。
如果你只是换背景的颜色的话,可以直接指定android:cacheColorHint为你所要的颜色,如果你是用图片做背景的话,那也只要将android:cacheColorHint指定为透明(#)就可以了
第四divider属性,该属性作用是每一项之间需要设置一个图片做为间隔,或是去掉item之间的分割线
android:divider="@drawable/list_driver"
@drawable/list_driver 是一个图片资源,如果不想显示分割线则只要设置为android:divider="@drawable/@null" 就可以了
第五fadingEdge属性,上边和下边有黑色的阴影
android:fadingEdge="none" 设置后没有阴影了~
第五scrollbars属性,作用是隐藏listView的滚动条,
android:scrollbars="none"与setVerticalScrollBarEnabled(true);的效果是一样的,不活动的时候隐藏,活动的时候也隐藏
第六fadeScrollbars属性,android:fadeScrollbars="true"
配置ListView布局的时候,设置这个属性为true就可以实现滚动条的自动隐藏和显示。
[3] 十年微日志
&&&&来源:&互联网& 发布时间:&
十年微日记
迄今为止iPhone上发现的最好的日记本软件。将十年中的同一天放在一页上显示,写某一天日记的时候,可以回顾之前每一年的这一天都做了什么,太有成就感了界面看着很舒服,还有提醒、纪念日等功能
最新技术文章:
特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!
(C)2012-,站长邮箱:www_169it_(请将#改为@)JAVA复习题1. 创建类的对象时,使用运算符__________给对象分配内存空间.2. 定义类的构造方法不能有返回值类型,其名称与____
_名相同.3. Java语言中关键字___
__表示双精度类型.4. 若有定义:float_百度作业帮
拍照搜题,秒出答案
JAVA复习题1. 创建类的对象时,使用运算符__________给对象分配内存空间.2. 定义类的构造方法不能有返回值类型,其名称与____
_名相同.3. Java语言中关键字___
__表示双精度类型.4. 若有定义:float
JAVA复习题1. 创建类的对象时,使用运算符__________给对象分配内存空间.2. 定义类的构造方法不能有返回值类型,其名称与____
_名相同.3. Java语言中关键字___
__表示双精度类型.4. 若有定义:float b={1.1f, 3.5f, 6.8f};,则b.length()的值是_______.5.若有类定义:class B extends A{ …}
则类B是类A的______.6.接口中的成员只有静态常量和______.7.
在子类中使用关键字_______做前缀可调用被子类覆盖的父类中的方法.8. 关键字______用于导入包中的类到程序中,供程序中使用.9. Java语言中, 通常把可能发生异常的方法调用语句放到try块中,并用紧跟其后的_____块来捕获和处理异常.10. 程序中实现多线程的方法有两种:继承_____类和实现Runnable接口.
1. 创建类的对象时,使用运算符____new______给对象分配内存空间.2. 定义类的构造方法不能有返回值类型,其名称与___类_
_名相同.3. Java语言中关键字___ double __表示双精度类型.4. 若有定义:float b[]={1.1f, 3.5f, 6.8f};,则b.length()的值是___3____.5.若有类定义:class B extends A{ …}
则类B是类A的___子类___.6.接口中的成员只有静态常量和___抽象方法___.7.
在子类中使用关键字____super___做前缀可调用被子类覆盖的父类中的方法.8. 关键字__import____用于导入包中的类到程序中,供程序中使用.9. Java语言中, 通常把可能发生异常的方法调用语句放到try块中,并用紧跟其后的__catch___块来捕获和处理异常.10. 程序中实现多线程的方法有两种:继承___Thread __类和实现Runnable接口.我安装了java se 8 up 5(64-bit),但在cmd输入java -version显示‘java’不是内部或外部命令。_百度知道
我安装了java se 8 up 5(64-bit),但在cmd输入java -version显示‘java’不是内部或外部命令。
我已配置环境变量
提问者采纳
/article/b379f7a7c03afe那说明你还没有配置java环境变量
其他类似问题
按默认排序
其他2条回答
环境变量配了吗?classpath
java -version应该是不需要配置就可以查看的
设置环境变量
java -version应该是不需要配置就可以查看的
如果你使用的linux的话,系统自带有,但是win系统下,是需要进行环境变量配置。
为您推荐:
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁Red Hat 5.5中JDK的卸载和安装_Linux教程_Linux公社-Linux系统门户网站
你好,游客
Red Hat 5.5中JDK的卸载和安装
来源:Linux社区&
作者:gggxwy
由于 Enterprise Linux 5.5 中自带安装了jdk1.4的,所以在安装jdk1.6前先把jdk1.4的卸了,步骤如下:
一.jdk1.4卸载
1.打开终端输入
#rpm -qa | grep gcj
显示内容会包含下面几行信息,具体显示可能略有不同,比如版本号
java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
java-1.4.2-gcj-compat-devel-l.4.2.0-40jpp.115
java-1.4.2-gcj-compat-src-l.4.2.0-40jpp.115
2.卸载# rpm -e java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
# rpm -e java-1.4.2-gcj-compat-devel-l.4.2.0-40jpp.115
# rpm -e java-1.4.2-gcj-compat-src-l.4.2.0-40jpp.115
如果有依赖关系,提示无法卸载,使用rpm -e --nodeps 卸载就行了。
二.jdk1.6安装
下载地址:
1. 从网站上下载jdk1.6包(jdk-6u26-linux-i586-rpm.bin ).
2.如果权限不够,修改jdk1.6的使用权限:#chmod u+x jdk-6u26-linux-i586-rpm.bin
3.解压并安装:#./ jdk-6u26-linux-i586-rpm.bin (默认安装在/usr/java中)。
4.环境变量配置:#vi /etc/profile
在该profile文件中添加:
JAVA_HOME=/usr/java/jdk1.6.0_26
JRE_HOME=/usr/java/jdk1.6.0_26/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/jt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH
添加完毕保存退出
打开终端输入:
#source /etc/profile
#java -version
&java version "1.6.0_26"Java(TM) SE Runtime Environment (build 1.6.0_26-b03)Java HotSpot(TM) Client VM (build 20.1-b02, mixed mode, sharing)
(jdk1.6安装成功)
三.卸载rpm版的jdk:
#rpm -qa | grep jdk显示:jdk-1.6.0_26-fcs
卸载:#rpm -e --nodeps jdk-1.6.0_26-fcs
以上为实践总结
已经试过,根据自己的情况改一点点就可以用了!
相关资讯 & & &
& (11/28/:22)
& (09/28/:50)
& (06月24日)
& (09/29/:27)
& (09/12/:35)
图片资讯 & & &
   同意评论声明
   发表
尊重网上道德,遵守中华人民共和国的各项有关法律法规
承担一切因您的行为而直接或间接导致的民事或刑事法律责任
本站管理人员有权保留或删除其管辖留言中的任意内容
本站有权在网站内转载或引用您的评论
参与本评论即表明您已经阅读并接受上述条款}

我要回帖

更多关于 redhat5.5 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信