String é um dado Primitivo?

Os dados primitivos são 8 (char,boolean,byte,int,short,long,float,double)
Inteiros
Byte = 8 bits
Short = 16 bits
Int = 32 bits
Long = 64 bits
Números Reais
Foat(precisão simples) = 32 bits
Double(precisão dupla) = 64 bits
A diferença entre precisão simples e dupla se restringe ao número de casas decimais apresentada.
Outros Tipos
Char(caracter simples) = 16 bits
Boolean = 1 bit(verdadeiro ou falso)

Um dado do tipo String pertence a uma classe String, deixando de ser um dado primitivo.

Dúvida: Dado Primitivo = Dado Nativo?

Gostaria que vcs, dessem uma olhada na minha resposta e se tiver algo a acrescentar ou corrigir agradeço.

SDS.

String não é um tipo primitivo - deriva de java.lang.Object.

É que ele é tratado especialmente pela linguagem.

O que é um “dado nativo”?

O que não for boolean, char, byte, short, int, long, float ou double (com letras minúsculas) não é primitivo.

Abraços,

String não é um dado primitivo em Java.
Dados primitivos em Java, são todos aqueles que não derivam de Object. Em java para cada tipo primitivo existe um Wrapper correspondente. Esse wrapper nada mais é que uma forma de encapsular o tipo primitivo em um objeto para promover um dos principais pilares do OO.
Como foi falado pelo colega thingol, ele é tratado de forma especial no Java, ele é imutável.
Isso significa que sempre que você modifica um Objeto do tipo String, a JVM na verdade está criando uma cópia do objeto em si.

Espero ter acrescentado algo à discução, se estiver errado ou imcompleto me corrijam por favor.

sorte

Valeu Pessoal!!!

Dado nativo, eu tirei do livro que estou lendo.
“Introdução a Programação Orientada a Objetos usando JAVA de Rafael Santos.”

Existe uma frase que diz: “Existem poucos tipos dados nativos em java… que não são parte da linguagem e não são instâncias de outras classe…”
Obs.Estou no início do livro.

Cara java tem algumas maneiras de identificar oque é oque. tipo Toda Classe começa com letra maiuscula, todo metodo começa com letra minuscula, variaveis tbm são como os metodos começando com letra minuscula. Java trata String como objetos e não como tipo primitivos como por exemplo um char, um exemplo disso é que quando você atribui uma String para uma variavel, como por exemplo.

String s = "GUJ"; 

é como se você fizesse algo do tipo

String s = new String("GUJ");

espero ter ajudado.

[quote=Daniel Ilha]Os dados primitivos são 8 (char,boolean,byte,int,short,long,float,double)
Inteiros
Byte = 8 bits
Short = 16 bits
Int = 32 bits
Long = 64 bits
Números Reais
Foat(precisão simples) = 32 bits
Double(precisão dupla) = 64 bits
A diferença entre precisão simples e dupla se restringe ao número de casas decimais apresentada.
Outros Tipos
Char(caracter simples) = 16 bits
Boolean = 1 bit(verdadeiro ou falso)

Um dado do tipo String pertence a uma classe String, deixando de ser um dado primitivo.

Dúvida: Dado Primitivo = Dado Nativo?

[/quote]

Boolean é um bit logico, mas é fisiciamente um byte. A menor unidade do java é byte, não bit.
Boolean = 1 byte
byte = 1 byte
short = 2 byte (com sinal)
char = 2 byte (sem sinal)
int = 4 bytes
long = 8 bytes
float = 4 bytes
double = 8 bytes

A diferença entre float e double não é a virgual é o passo. ou seja, a menor distancia entre dois numeros

tipo nativo = aquele que o processador usa
tipo primitivo = aquele que não é um objeto ou composto
tipo de “primeira classe” ( first class citizen) = aquele que sendo primitivo ou não é muito importante e tratado
de forma especial pela linguagem, compilador e runtime.

O java é independente do CPU logo ele não trabalha com tipos nativos. Todos os tipos primitivos são
construidos com tipos nativos pelo JVM mas o java em si não manipula isso.
String é um objeto e portanto não é primitivo. Ele é contudo um tipo especial, ele é um tipo de “primeira classe” ou seja,
ele tem tratamento diferenciado pela espciiifcação, sintaxe e runtime.Array seria um outro tipo que é de "primeira classe’

De primeira classe temos:
java.lang.Object
Arrays
java.lang.String
java.lang.Throwable
java.lang.Exception
java.lang.RuntimeException
java.lang.Iterable
java.lang.Thread
java.lang.Class
Classes empacotadoras (desde o java 5)
Boa parte das Exceptions e Errors do java.lang.

E deve haver mais algumas.

Muito obrigado pessoal!!!

Um dia eu chego lá!!!

Para firmar conceito:

O byte é a menor unidade em java.

Se tivesemos que desmembrar um byte e trabalhar com seus bits, como seria o comportamento?

SDS.

[quote=Daniel Ilha]Para firmar conceito:

O byte é a menor unidade em java.

Se tivesemos que desmembrar um byte e trabalhar com seus bits, como seria o comportamento?
[/quote]

seria o esparado. O ponto é que não existe um tipo de dado “bit”. Se vc quiser trabalhar apenas com um bit utilize boolean ( que embora sendo um byte simula um bit). Ou use um byte, short ou int e utilize apenas o primeiro bit.

Valeu Sérgio!!

Minhas perguntas estão sendo primárias, mas são dúvdas que aparecem quando estou estudando.