I am creating a slot machine using eclipse. I am trying to get the "winnings" JTextField to be updated in a way so that when the random images have been selected it adds to the number that is already displayed in the JTextField as opposed to what it is doing at the minute which is just displaying how much was won on that particular spin. I am also struggling to set a code for when noting is won, nothing is added. My code is below.
I am trying to create an array list without using the built in arrayList class that java has. I need to start the array being empty with a length of 5. I then add objects to the array. I want to check if the array is full and if not add a value to the next empty space. Once the array is full I then need to create a second array that starts empty and with the length of the first array + 1.
The contents of the first array are then copied into the new array without using the built in copy classes java has and then the new array ends up containing 5 elements and one null space the first time round. The first array is then overwritten with the new array containing the 5 elements and the null space. The process then starts again adding values until the array is full which will be 1 more value then recreating the second array empty and the length of the first array + 1. This is my attempt at creating this but I have run into multiple problems where I get only the last value I added and the rest of the values are null:
public class MyArrayList { public Object arrayList[]; public MyArrayList(Object[] arrayList) { this.arrayList = arrayList;
So I'd like to know what all the statement, not sure if it's the correct way of calling them but I'd like to know what like all of those purple-ish colored words in eclipse actually mean.Here's what I know so far, so if you can add some stuff to it or just correct me:
public - can be accessed by different classes. private - can't be accessed by different classes. static - adds a '.' which pretty much lets you like use methods on it? Not really sure about this one. final - a final value of a variable meaning it couldn't and willn't change? super - I have no clue, maybe something that has to be executed first? Not sure. void - bassicly you don't have to use return as it doesn't return any value. this - Uh-.. I think it has something to do with the class this keyword has been entered into, not quite sure what it does though.
I assume there are alot more but I am just not sure about these common ones, what the actually do and what's their purpose?
I'm working on a project that contains multiple classes. Each class contains and must contain only PRIVATE variables. Here's my issue. When my test code calls for a new instance of "StudentClass" as so:
StudentClass studentClass = new StudentClass(offeredClass.getClassIdNumber(), offeredClass.getClassName(), offeredClass.getClassroom());
The corresponding constructor won't let me initialize it's variables because they are declared private within another class, as shown here:
When getClassName, getClassroom, and getClassIdNumber are passed to a toString() method elsewhere in my test code. the output is returned just fine. When passed through the StudentClass, I'm getting Null across the board.
The first is clear , new Person().printPerson(); displays Person but for the second : new Student().printPerson(); it accesses the Student constructor that points to the Person class => object. It builds the Person instance then goes back to the Student constuctor .Both methods are private and to my knowledge invisible one to the other , except that you cant run the the Person one because it's private so the only one in the Student class is the Student one . Guess it 's incorrect , but why ? (is because private methods cant be overriden and somehow the super class one always has priority ? , even if it's private?)
public class Test { public static void main(String[] args) { new Person().printPerson(); new Student().printPerson();
public class StudentNumber { /* public StudentNumber(){ System.out.println("test"); } */ private char c='W'; public StudentNumber(float i){ System.out.println(i);
[Code] ....
Exception in thread "main" java.lang.RuntimeException: Uncompilable source code - c has private access in extention.pkgsuper.StudentNumber at extention.pkgsuper.ExtentionSuper.main
I have a project for a class where I'm supposed to be something with private arrays and private integers and I still don't understand the point of private anything within java. if I want to change a variable I'll change it. if I want it to stay the same I'll leave it the same. so what point is all this private/public nonsense unless I'm trying to stop hackers or something?
import java.util.Scanner; import java.util.ArrayList; public class Problem1 { public static void main(String[] args) { Scanner scan = new Scanner(System.in); ArrayList<String> list = new ArrayList<String>();
[Code] ....
There is an error and says that my ArrayList has private access. I can't figure out how to fix it.
The code runs but when I enter "Quit", the program just stops. The arraylist isn't printed out?
When creating a class with a constructor, why does one have to create private variables (attributes) to be used as parameters by the object? The object's parameters will be set to be exactly equal to the private variables (attributes), so what is the point of having the private variables (attributes) Why are both private variables (attributes) and parameters needed when they are set to be equal each other anyway?
I just recently started learning about encapsulation, how to set variables private and only accessible to other classes through setters() and getters(). I've seen a couple of programming examples, perhaps not enough but some from here, and I sort of built the assumption that by default all variables need to be private. to make things more clear, here's a card dealer I made which simply
1- generates a fulll deck of 52 cards 2- lets user decide how many players, with 5 as Max number allowed as each player is dealt 10 cards. 3- deal cards
I approached this by making A deck , card , player and game class
import java.util.ArrayList; public class Deck { //an Object of this Class would generate a full deck ie an ArrayList of 52 Cards private String[] suits={"Spades","Diamond","Clubs","Hearts"}; private int[] number={1,2,3,4,5,6,7,8,9,10,11,12,13}; ArrayList<Cards> deck= new ArrayList<Cards>();
[code]....
I can understand why for example Deck class's suit and number arrays are set to private , as they only need to be accessed by this class only. however, both the Deck class's deck arraylist and the Player class arraylist are not private, as I need to transfer these values from one to the other and it felt to me that setting them to private would make it more difficult to deal with them, but what I did instead is to set the Game class dealCard(), which is the only method that have access to them as private. does this achieve the same effect or do I need to set both of these arrayList to private?a follow up question, this is more related to the actual card dealer program, in this code
private void dealCards(){
for(int x = 0 ; x < playerCount ; x++){ for(int y = 0 ; y < 10; y++){ playerList.get(x).pile.add(deck.deck.get(0)); deck.deck.remove(0); } } }
is there an API in ArrayList class that moves(adds to receiver and remove from giver) element across ArrayLists?
1) When a variables are declared "Private" How should it be accessed from the driver class ? Sometimes i get an error in driver class saying "your variable is declared Private" why am I getting this error ...
The document says "Private" declared variables should be accessed only through methods. What does that mean.
As below code showing that you cannot directly access the private variable as i understood,
public class EncapsulationDemo{ private int ssn; private String empName; private int empAge; //Getter and Setter methods public int getEmpSSN(){ return ssn; } public String getEmpName(){ return empName;
I have a class named Base and a private variable named _hopcount i have 10 instances of class base i use _hopcount as creteria to some if but other instances edit _hopcount so i want to prevent _hopcount edit by other instances; I want to have private variable which other instances of same class can't modify it.
public class Base extends TypedAtomicActor { private int _hopcount = 0; if(_hopcount <= 3) { some code; } public function() { _hopCount += 1; } }
I have problems with private static void print section, something is missing? And in case 4, I want it to stop the program(end the loop) but it keeps going.
import java.util.Scanner; import java.util.ArrayList; public class Dogregister16 { public static ArrayList<Dog> dogregister = new ArrayList(); private static Scanner keyboard = new Scanner(System.in); public static void main(String[] args) { initiate();
[Code] ....
case 4: System.exit(0); System.out.println("Exit program"); } } } }
so, i was reading my java book and learning about objects and methods and it starts talking about Encapsulation and mentions that it's good practice to set instance variables as private and instead of accessing the instance variables directly, we should create a set method and get method to get and set the stuff we want to pass to the class containing the object...
for example, in this class, we're passing the integer 70 for object dog one and integer 8 for object dog two for the dog class... and these these 2 integers are sent to the setsize method so we're not accessing instance variable size directly.
i dont quite get it though....if we the programmer are the one deciding what size the integer is for the dog, and the setsize method takes the one.setSize(70) or (8) and puts them in setsize(int s) as s... but only to copy that integer stored in s back to private int size.... why do we even need to bother with making these two extra methods such as setSize, getSize?
in the book it says that... well what if the code gets into the wrong hand and someone writes something like one.setSize(0) then you would get a dog with size 0 which is essentially illogical. but then again, i'm the programmer, and i am the person who writes the code and passing the right integer.The reason for public and private... that part i understand... i can see why if a variable's data can get changed amidst the code during calculations and you dont want it to directly change the original variable and have it mess up the code, but this code from the book just a bad example of demonstrating the reason? since we manually pass the information ourselves and passing it to method setSize... and all setSize does is stores it in another integer, only to copy it right away to size (which is the original private variable we were tryign to protect?
Any simple code to demonstrate how the code might end up changing an instance variable and why we would want to protect it by using private?
class GoodDog { private int size; public int getSize() { return size; } public void setSize(int s) { size = s;
I thought you can only create a new object using private implementations and then using a constructor to set your arguments inside the parameters of the constructor to the instance variables but how come he created an object without any private implementations and just methods inside the constructor.
import javax.swing.JFrame; public class MyWindow extends JFrame { public static void main(String[]args){ new MyWindow(); } public MyWindow(){ setSize(500,500); setVisible(true); setTitle("MyWindow"); } }
I am able to get output from my constructor when I place a loop inside of it. However when I try to access the private variable that I thought was set by the constructor I get nothing. When I check its size it is zero as well.
Java Code:
public class WinningHand extends PokerCalculator { private int p1Size; private int p2Size; private String[] p1Hand = new String[p1Size]; private String[] p2Hand = new String[p2Size];
When we say derived class that means copy of base class plus subclass specific implementations. But when it comes to private members it cannot be accessible in subclass scope. Does it mean byte code generated for subclass doesn't has byte code of private members of super class ?
public class Class1 extends AbstractClass { //stuff } public class Class2 extends AbstractClass { //stuff }
within another class I have a private variable with the type of the Abstract class, and within one of the methods I assign an object to the the variable like this:
public class Test { private AbstractClass temp; public testMethod(){ Class1 anObject = new Class1(); temp = anObject; } }