Android 台灣中文網

標題: .java檔 互傳問題 [打印本頁]

作者: ArthasL    時間: 2013-9-13 01:26
標題: .java檔 互傳問題
各位師兄
我問一下 因為原本的.JAVA檔CODE太長了不好看
想開另一個.JAVA檔來存放部分CODE
但是我不知道要怎麼做
能給個簡單的樣本看看嗎?
感謝!!
作者: ploglin    時間: 2013-9-13 08:58
直接把檔案分開,應該是說類似 PHP include 的用法吧~~
不過我寫 java 一段時間了,也不清楚有沒有這樣的用法。
但Java本身的特性就是物件,把程式分開成一個一個的物件,再去實作應該也可以達到你的需求。
作者: ArthasL    時間: 2013-9-13 09:08
應該是說 CLASS之類的可以分開?
然後在MAIN的JAVA檔把另一個JAVA檔的CLASS CALL出來?

作者: sky1988a    時間: 2013-9-13 11:08
可以把class拆開寫,然後再main new出來
作者: ArthasL    時間: 2013-9-13 11:28
以我所知道 就是新開一個JAVA檔
開始一定要加package
但後面有沒有一定要加的東西才可運作?

需要 public class MainActivity extends Activity 嗎 ?
作者: sky1988a    時間: 2013-9-13 11:46
public class ClassName{}
作者: ArthasL    時間: 2013-9-13 12:29
那麼 我在 新的JAVA檔內 用CLASS作計算
得出X=4
如何在另外那個JAVA檔內找回X的數值?

另外就是如何直接把CLASS的內容叫出來?
作者: sky1988a    時間: 2013-9-13 13:10
Main.java
public class MainActivity extends Activity {

        @Override
        protected void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                setContentView(R.layout.activity_main);
               
                int x;
                Calculate mCalculate = new Calculate();
                x = mCalculate.showX();
               
        }
}

Calculate.java
public class Calculate{
       
        public int showX(){
                int x = 4;
                return x;
        }
}
作者: xjxuvup    時間: 2013-9-13 21:32
大致上就是去new物件
然後呼叫它的function
通常都是傳參數進去
然後運算完
在回傳回來
作者: ArthasL    時間: 2013-9-14 22:33
本帖最後由 ArthasL 於 2013-9-14 22:46 編輯

抱歉 想問問我現在有2個LAYOUT 2個JAVA
我在第2個LAYOUT內加了
<Button
        android:id="@+id/back"
        android:layout_width="30sp"
        android:layout_height="25sp"
        android:layout_alignParentTop="true"
        android:layout_alignParentRight="true"
        android:onClick="onclick_back"
        android:background="@drawable/backbutton" />

然後在第2個JAVA內加了
package com.example.ColorBalls;

import android.os.Bundle;
import android.app.Activity;
import android.view.View;

public class Menu extends Activity {

        @Override
        protected void onCreate(Bundle savedInstanceState) {

                super.onCreate(savedInstanceState);
                setContentView(R.layout.menu);
               
        }
       
        public void onclick_back(View view){
                setContentView(R.layout.activity_main); }
               
}

這個ONCLICK_BACK就無效了 這是為什麼?
但我在第1個JAVA內加ONCLICK_BACK就沒問題
作者: whl    時間: 2013-9-15 23:22
ArthasL 發表於 2013-9-14 22:33
抱歉 想問問我現在有2個LAYOUT 2個JAVA
我在第2個LAYOUT內加了

findViewById 在哪裡?




歡迎光臨 Android 台灣中文網 (https://apk.tw/) Powered by Discuz! X3.1